【发布时间】:2018-11-18 12:35:35
【问题描述】:
我正在开发一项功能,我需要根据本地数据库数据过滤掉网络响应数据。
例如,我的网络层返回一个项目列表,而我的数据库层返回一个可观察的 id 列表。现在我只想从网络层返回那些 id 与数据库层响应中的任何人匹配的对象。
以下代码从网络获取数据并将结果保存到数据库(缓存)。
factory.getRemoteDataStore()
.searchForVenues(query)
.toObservable()
.distinctUntilChanged()
.flatMap { venues ->
factory.getCacheDataStore()
.saveVenues(venues)
.andThen(Observable.just(venues))
}
我还有一个方法可以返回需要过滤的场所列表
factory.getCacheDataStore().getDislikedVenues()
现在,如何扩展之前的链以使用 getDislikedVenues() Observable 从网络响应的响应中过滤它们?
抱歉这个菜鸟问题,我真的很挣扎。
【问题讨论】:
标签: android rx-java observable rx-java2 rx-kotlin