0
からemitedイベントをフィルタリングするflatMapFirstを防ぐために、私はこのようなコードをより少なく持っている:RxSwift - どのように加入者
let requestResult = someSubject
.flatMapFirst{ [weak self] _ -> Observable<ResponseClass> in
return self?.triggerNetworkRequest() ?? Observable.never()
}.share()
requestResult.subscribe(onNext: { [weak self] response in
if someCondition {
self?.someSubject.onNext()
}
}).addDisposableTo(disposeBag)
だから私は基本的には、いくつかの状況では、ネットワーク要求を繰り返す新しいonNextイベントを放出しています。
イベントをこのように放出すると、flatMapFristによって引き続き除去されるという問題があります。私がそれを包み込むならば
DispatchQueue.main.asyncAfter(deadline: .now() + .milliseconds(10)) {
self.toggleLikeSubject.onNext()
}
それは働く。
このイベントがフィルタリングされないようにするにはどうすればよいですか?