【发布时间】:2018-11-27 09:10:42
【问题描述】:
我将如何根据条件使用Completable 开始一个链?
我在getThings() 中有下面的代码,它可以工作,但根据我看到的示例,它感觉不像是正确使用 RxJava。 downloadThings() 和 getCachedThings() 的内容对于此示例无关紧要,但返回类型很重要。
fun downloadThings(): Completable {
...
}
fun getCachedThings(): Flowable<List<Task>> {
...
}
fun getThings(): Flowable<List<Task>> {
return if (condition) {
downloadThings()
} else {
Completable.complete()
}.andThen(getCachedThings())
}
我对 RxJava 的理解欠缺,所以我不能很好地解释它,但看起来条件是在流“之外”。
有没有更正确的方法可以做到这一点,或者我这样做的方式好吗?
谢谢。
【问题讨论】:
-
所以数据可以发出或不发出,对吧?
-
是的,如果条件为真,它会下载一些东西,如果条件为假,它什么也不做。
-
值得一提的是,这是一种基于意见的问题......