Rx java io.reactivex.Single中不存在doOnNext()
我正在将一个应用程序从RxJava 1迁移到2。我有这样一个代码: RxJava 1Rx java io.reactivex.Single中不存在doOnNext(),rx-java,rx-java2,Rx Java,Rx Java2,我正在将一个应用程序从RxJava 1迁移到2。我有这样一个代码: RxJava 1 public Completable update() { return client.fetchNotes() .map(toNote()) .toList() .doOnNext(save()) .toCompletable(); } 在上面的代码中,toList()返回一个可观察的 现在,我正在尝试将该代码转换为RxJava 2:
public Completable update() {
return client.fetchNotes()
.map(toNote())
.toList()
.doOnNext(save())
.toCompletable();
}
在上面的代码中,toList()
返回一个可观察的
现在,我正在尝试将该代码转换为RxJava 2:
RxJava 2
public Completable update() {
return client.fetchNotes()
.map(toNote())
.toList()
.doOnNext(save()) // <-- compilation error here
.ignoreElements();
}
由于单个
只发出一个项,因此它没有“下一步”或doOnNext()操作符的概念。而是使用doOnSuccess()
您是否尝试过在toList()之后键入dot
然后键入d
o
n
以查看IDE会显示哪些选项?当我尝试使用可观察时。仅(“Alpha”、“Beta”、“Gamma”、“Delta”、“Epsilon”)。toList()杜恩先生。订阅->系统输出打印项次(“接收:+s”)
got doOnDispose、doOnError、doOnEvent、doOnSubscrib、doOnSuccess以完成代码。(当然,也可以使用单个订户的onSuccess()
方法来处理列表。应该不需要.ignoreElements()
)
interface Database {
void store(List<Note> notes);
}