私のアプローチにはいくつかの疑問があります。私は2種類のオブザーバブルを持っています:
//I can fetch from the server the houses and save them in the database
func houses() -> Observable<[House]>
//Given a houseId, I can fetch it's details and save them in the database
func houseDetail(id: Int) -> Observable<Family>
最初にすべての家を取得し、次に家族を取得する Observable を実行したいと思います。私がしたことはそのようなものです:
//I am an observable which, when I complete, all data are saved
func fetchAllHousesAndFamily() -> Observable<Any> {
var allHousesObservables: [Observable] = []
for house in houses {
allHousesObservables.append(houseDetail(house.id))
}
return Observable.combineLatest(allHousesObservables)
}
しかし、これは...私にはリアクティブなスタイルではないようです.rx演算子について十分に知らないので、ハックのように思えます.
rxworld でそれを行う正しい方法はありますか?
ありがとうございました