由于几个星期以来,我经常使用Observables,因此在工具箱中拥有它确实是我的荣幸。
但是,我似乎无法理解以下结构(只是一个理论示例)所说明的语义/术语:
const o = Observable.create((observer: Observer<boolean>) => {
observer.next(true);
observer.error(false);
});
我知道您需要将参数传递给匿名函数以使其实现,但是为什么将其称为Observer类型的Observer以及为什么要在此观察者上调用next()和error()?在我看来,是可观察的对象发出值并将其推向观察者。上面的构造似乎可以解决这个问题。
基本上,具有以下伪代码是否更合乎逻辑:
const o = Observable.create(() => {
this.next(true);
this.error(false);
});
或更清楚地是:
const o = Observable.create(next: () => {... return true;}, error: () => { return false;});
也许是一个非常新手的问题,但我很想获得一些见识。
谢谢!
答案 0 :(得分:1)
Observable-Observer 模式是一种 Push 机制,意味着通知Observer是Observable的任务。 Observable需要引用Observer来通知它有关新的发射。诸如 onNext 和 onError 之类的可观察回调是Observable-Observer之间的桥梁,因此此类回调存在于Observer中,Observable会调用它们。