angular – RXJS:TypeError:this._subscribe不是函数

前端之家收集整理的这篇文章主要介绍了angular – RXJS:TypeError:this._subscribe不是函数前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在将离子3.8应用程序迁移到3.9.2.
此迁移包括对RXJS 5.5的更新

我现在遇到这个错误

TypeError:this._subscribe不是函数. (在’this._subscribe(sink)’中,’this._subscribe’是t的一个实例)

经过几个小时的调试,我发现这个代码部分与错误有关:

protected observeConnectionState() {

    // rxjs/observable/of
    of(new Event('disconnect'))
        .pipe(
            // rxjs/operators/merge
            merge(connect$),merge(disconnect$),// Map eventname to string (rxjs/operators/map)
            map((e: IEvent) => {
                return e.eventName == 'connect' ? 'connected' : 'disconnected';
            })
        )
        // Apply to class context
        .subscribe((newConnectionState) => {
            // this.connectionState$is a BehaviorSubject
            this.connectionState$.next(newConnectionState);
        });
}

附加信息

> RXJS代码中有两个地方,我能找到这个._subscribe:Observable.ts Line 203Observable.ts Line 208.

好吧,我发现了问题.它与科尔多瓦无关.

对于遇到此问题的其他人:
忘记堆栈跟踪 – 它没用.在我的情况下,在this.connectionState $的订阅者中,我尝试从promise创建一个Observable.但我做错了.

这是错的:

import { Observable } from 'rxjs/Observable';
//...
const myObservable$= Observable.create(myPromise);

这是应该如何做到的:

import { fromPromise } from 'rxjs/observable/fromPromise';
// ...
const myObservable$= fromPromise(myPromise);

猜你在找的Angularjs相关文章