obs1.flatmap(x -> obs2()).subscribe(sub)链中,如果obs2产生错误,则会导致立即调用onError上的sub。如文档所示:



但是有可能忽略obs2错误并使obs1继续发出吗?

最佳答案

Rx提供了一些运算符(operator)来处理错误。只需从obs2创建第三个Observable,它不会传播错误。

Observable<YourType> obs3 = obs2.onErrorResumeNext(Observable.<YourType>empty());
obs1.flatmap(x -> obs3)

10-06 03:00