В одном из моих проектов у меня есть следующий код, и после перехода на RxJS5 Rx.Observer больше не определяется:
let index = 0;
let obsEnqueue = this.obsEnqueue = new Rx.Subject();
this.queueStream = Rx.Observable.create(obs => {
var push = Rx.Observer.create(v => { // ! error
if ((index % obsEnqueue.observers.length) === obsEnqueue.observers.indexOf(push)) {
obs.next(v);
}
});
return obsEnqueue.subscribe(push);
});
this.push = (v) => {
obsEnqueue.next(v);
index++;
};
это больше не работает, потому что Rx.Observer
не определено
в руководстве по миграции:
https://github.com/ReactiveX/rxjs/blob/master/MIGRATION.md
он говорит:
Observer теперь интерфейс
Однако это не должно означать, что Rx.Observer, даже если это интерфейс, не должен иметь «статический» метод, называемый create.
В любом случае, Rx.Observer
больше не существует. Я получаю эту ошибку:
TypeError: Cannot read property 'create' of undefined
Как я могу создать наблюдателя, чтобы получить результаты, аналогичные моему коду выше?