在链obs1.flatmap(x -> obs2()).subscribe(sub)是否obs2会产生一个错误,它会导致立即调用onError上sub.这是记录在案的:
请注意,如果通过flatMap映射到源Observable中的项的任何单个Observable都通过调用onError中止,则flatMap生成的Observable将自行立即中止并调用onError.
但是有可能忽略obs2错误并obs1继续发射吗?
Geo*_*izy 11
Rx为一些运营商提供了处理错误的方法.只需从obs2创建第三个Observable,它不会传播错误.
Observable<YourType> obs3 = obs2.onErrorResumeNext(Observable.<YourType>empty());
obs1.flatmap(x -> obs3)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4398 次 |
| 最近记录: |