从可完成到可观察的 RxJava
From completable to observable RxJava
我有return可以完成的方法
interface MyClass{
fun getSomething(): Completable
}
如果完整,我想将其映射到 Observable.just(true)
,如果不完整,我想映射到 Observable.just(false)
。complete/error。
类似这样的东西(伪代码)
getSomething().doIf {
if (it.onComplete){
return Observable.just(true)
} else {
return Observable.just(false)
}
}
有没有类似我编的方法doIf
?
我试图使用 Observable.fromcallable{}
或 myClass.getSomething().toObservable
来实现它,但没有任何效果。
是否有可能实现它以及如何实现?
将其转换为 Single,然后转换为 Observable:
getSomething()
.toSingleDefault(true)
.onErrorReturnItem(false)
.toObservable()
或转换为 Observable
并平面映射信号
getSomething()
.toObservable()
.flatMap(
{ Observable.never<Boolean>() },
{ Observable.just(false) },
{ Observable.just(true) }
)
我有return可以完成的方法
interface MyClass{
fun getSomething(): Completable
}
如果完整,我想将其映射到 Observable.just(true)
,如果不完整,我想映射到 Observable.just(false)
。complete/error。
类似这样的东西(伪代码)
getSomething().doIf {
if (it.onComplete){
return Observable.just(true)
} else {
return Observable.just(false)
}
}
有没有类似我编的方法doIf
?
我试图使用 Observable.fromcallable{}
或 myClass.getSomething().toObservable
来实现它,但没有任何效果。
是否有可能实现它以及如何实现?
将其转换为 Single,然后转换为 Observable:
getSomething()
.toSingleDefault(true)
.onErrorReturnItem(false)
.toObservable()
或转换为 Observable
并平面映射信号
getSomething()
.toObservable()
.flatMap(
{ Observable.never<Boolean>() },
{ Observable.just(false) },
{ Observable.just(true) }
)