如何在RxJava2 / RxKotlin2中实现 Observable.concatEagerDelayError 或等效功能?
有:
但不是:
我有什么:
fun getAll(): Observable<List<User>> = Observable.concatArrayDelayError(
// from db
userDAO
.selectAll()
.subscribeOn(ioScheduler),
// from api
userAPI
.getAll()
.doOnNext { lstUser -> Completable.concatArray(
userDAO.deleteAll().subscribeOn(ioScheduler),
userDAO.save(lstUser).subscribeOn(ioScheduler)
) }
.subscribeOn(ioScheduler)
)
我希望具有相同的行为,但希望使用selectAll()和getAll(),因为没有理由等待db启动网络调用。
答案 0 :(得分:1)
使用res/layout-large/activity_main.xml
:
concatMapEagerDelayError
编辑:
Observable.fromIterable(sources)
.concatMapEagerDelayError(v -> v, true);
Observable.fromArray(source1, source2, source3)
.concatMapEagerDelayError(v -> v, true);