我从RAC切换并希望重复网络请求,根据请求的API返回不同的结果类型。
我想使用间隔,但我不知道如何匹配返回类型。
var loop: Observable<Element> {
return Observable<Int>.interval(5.0, scheduler: MainScheduler.instance).map { _ in
// Do network request and return Observable<Element>
}
}
我需要使用Int类型调用Observerable.interval,但返回Observable。我该怎么做?
答案 0 :(得分:8)
使用flatMap:
var loop: Observable<Element> {
return Observable<Int>.interval(5.0, scheduler: MainScheduler.instance).flatMap { _ in
return networkRequest() // returns Observable<Element>
}
}