【发布时间】:2017-04-28 16:18:42
【问题描述】:
当我使用 debounce() 时,然后从后端获取数据和数据
我想转换为另一个数据,最后使用toList()。
当我使用toList() 时,什么都没有发生,没有任何日志没有订阅和错误,没有toList() 它可以工作,subscribe() 方法输入的数量与我的书籍列表一样多,我测试了代码的第二部分,没有@ 987654326@ 只是 getItems() 并使用 toList() 它可以工作。
下面是我的代码,第一部分 debounce() 和 itList() 不起作用,第二部分 toList() 起作用
public Flowable<List<Book>> getItems(String query) {}
textChangeSubscriber
.debounce(300, TimeUnit.MILLISECONDS)
.observeOn(Schedulers.computation())
.switchMap(s -> getItems(s).toObservable())
.flatMapIterable(items -> items)
.map(Book::convert)
.toList()
.observeOn(AndroidSchedulers.mainThread())
.subscribe(books -> {
Log.i("test", "" + books.toString());
}, error -> {
Log.i("test", "" + error);
});
getItems(query).flatMapIterable(items -> items)
.map(Book::convert)
.toList()
.observeOn(AndroidSchedulers.mainThread())
.subscribeOn(Schedulers.io())
.subscribe(books -> {
Log.i("test", "" + "" + books.toString());
}, error -> {
Log.i("test", "" + error);
});
【问题讨论】:
标签: android rx-java rx-android