将多个请求合并为一个。可观察数组到数组的可观察数据中

时间:2018-06-18 14:44:39

标签: ios swift observable rx-swift rxdatasources

我正在对collectionView中的每个部分进行多次请求。

我们的想法是将它们连接成一个Observable< [FeedSection]>这样我就可以将它绑定到collectionView部分。

现在我有一个可观察数组,我不知道如何改变它。想法?

所以我正在研究这样的问题:[Observable<FeedSection>] -> Observable<[FeedSection]>

代码:

let feedObservable = [flickrProvider.rx.request(.kittens),
                      flickrProvider.rx.request(.dogs),
                      flickrProvider.rx.request(.publicFeed)].map { 
                          $0.map(Feed.self).asObservable()
}

1 个答案:

答案 0 :(得分:1)

你可以这样做:

let feedObservable = [flickrProvider.rx.request(.kittens),
                      flickrProvider.rx.request(.dogs),
                      flickrProvider.rx.request(.publicFeed)]
let zipped = Observable.zip(feedObservable).map { kittens, dogs, public in 
    return [kittens, dogs, public]
}