我所有的 Observables 都出现错误 'takeUntil is not a function'

Error 'takeUntil is not a function' on all my Observables

出于某种原因,我无法在我的任何可观察对象上使用 takeUntil 方法。

我的 IDE(Visual Studio 代码)在我编码时将其显示为有效方法,并且编译良好(来自 typescript),但是当我 运行 它时我得到 takeUntil is not a function 我的任何 observables。

我使用的是 rxjs 版本 5.3.0。

我可以通过多种方式实现它,但这可能是最直接的:

let subject:BehaviorSubject<any> = new BehaviorSubject<any>({});
let unsubscribe: Subject<void> = new Subject<void>();
subject.takeUntil(unsubscribe);

老实说,我找不到任何方法来实例化 takeUntil 不会导致该错误的任何东西,但是 IDE 从不抱怨并且 typescript 总是可以正常编译 - 错误总是发生在浏览器。

您可能需要导入 takeUntil 运算符:

import 'rxjs/add/operator/takeUntil';