我有一些方法
Maybe<Foo> getLocalFoo()
Single<List<Foo>> getFooFromInternet()
并且想要检查本地项目,如果它是空的,那么例如从网络获取该项目。
storage
.getLocalFoo()
.switchIfEmpty { network.getFooFromInternet().map { it[0] }.toMaybe() }
.subscribe({}, {})
但是认为代码没有执行 network.getBarcodeTemplates()这个函数。
答案 0 :(得分:2)
在(
行中使用{
代替switchIfEmpty
:
.switchIfEmpty ( network.getFooFromInternet().map { it[0] }.toMaybe() )