在链式结构中,如果
obs2
产生错误,那么在obs1.flatmap(x -> obs2()).subscribe(sub)
中会立即调用sub
的onError
方法。这个行为在文档中有说明:
但是,是否可以忽略请注意,如果由flatMap映射到源Observable项的任何单个Observable通过调用onError而中止,flatMap生成的Observable将本身立即中止并调用onError。
obs2
的错误,并使obs1
继续发出信号呢?
obs1.flatMap(x -> obs2.onErrorResumeNext(Observable.empty()))
- gmk57