ネットワークからさまざまなタイプのモデルを要求し、それらを1つのモデルに結合する必要があります。 複数のオブザーバブルを連鎖させ、別のオブザーバブルを返すことはどのように可能ですか?RxSwiftを異なるタイプで観測可能
私のようなものがあります:
func fetchDevices() -> Observable<DataResponse<[DeviceModel]>>
func fetchRooms() -> Observable<DataResponse<[RoomModel]>>
func fetchSections() -> Observable<DataResponse<[SectionModel]>>
をし、私のような何か実行する必要があります。RxSwiftでそれを達成するためにどのように
func fetchAll() -> Observable<(AllModels, Error)> {
fetchSections()
// Then if sections is ok I need to fetch rooms
fetchRooms()
// Then - fetch devices
fetchDevices()
// And if everything is ok create AllModels class and return it
// Or return error if any request fails
return AllModels(sections: sections, rooms: rooms, devices:devices)
}
を?私はドキュメントや例を読んでいますが、同じタイプのオブザーバブルをどのようにチェーン化するかを理解しています
私はZIPがあなたが探しているものだと思います:http://reactivex.io/documentation/operators/zip.html – ULazdins