Observable C()
失败并触发并进入重试时,所有其他流似乎都被阻塞。
Observable.combineLatest(Auth(), B())
.switchMap(([auth, b]) => C(auth.id, b.resp)())
.retry(2)
.subscribe({})
Auth
函数返回一个结构为
Stream.take(1)
.map(s => s.userSession)
.filter(s => s.type === 'AuthedUserSession')
.map(assertAsAuthedSession)
Auth
在其他一些地方与combineLatest
连接符一起使用。 B()
是可观察到的ajax。我尝试过在延迟时使用retryWhen
,但似乎行为相同。我是否有可能通过将其与重试块一起使用来阻塞使用Auth()
的任何地方?
答案 0 :(得分:0)
尝试使用“ forkJoin”而不是“ combineLatest”,这种情况下看起来更方便。不确定是否可以解决问题,您可以为案件设置游乐场吗?