Swift2年目の初心者でもRxSwiftでポーリングが書きたい!
欲張りな子ね。
クラスの中に以下を記載しておく。
import RxSwift import RxCocoa // もしかしたら必要ないかも? private var polling: Disposable? private let hoge = Variable<Hoge?>(nil)
そしてこんな感じ。
APIのリクエストの仕方とかはよしなにしてください。
let interval = Observable<Int>.interval(10, scheduler: MainScheduler.instance) self.polling = interval.subscribe(onNext: { [weak self] _ in guard let `self` = self else { return } HogeRepository().fetchHoge().subscribe(onNext: { [weak self] result in guard case .success(let hoge) = result else { return } self?.hoge.value = hoge }) .disposed(by: self.disposeBag) })
ポーリングは書きたくない