observableEmitingItemsRegularly
.map(this::cacheLastItem) //set the object in lastItem variable
.startWith(lastItem);
在开头总是返回相同的对象:在解释该行时解释的值。
我已经尝试过:
更改
.startWith(lastItem);
与
.startWith(getLastItem());
当我们初始化observable时调用函数getLastItem()
,而不是在我们想要订阅时调用。
非常感谢!
答案 0 :(得分:2)
您是否尝试过使用Defer
来自文档:
延迟在观察者订阅之前不要创建Observable,并且 为每个观察者创建一个新的Observable
.startWith(Observable.defer(() -> Observable.from(getLastItem()));