将我的 Angular 项目升级到版本 5.2.8 后,我的 WebStorm IDE (2017.3.5) 不再识别 rxjs 运算符 (rxjs@5.5.6)。它提示 unresolved function or method
。使用angular cli的编译(typescript@2.6.2)仍然有效。
在下面的例子中,它发生在运算符do
Observable.from([1,2])
.do((i: number) => {
console.log(i);
})
如果我导入 do 运算符 import 'rxjs/add/operator/do';
在同一个文件中或某个中央位置,这并不重要。
知道我必须如何配置 WebStorm 才能解决这个问题吗?
最佳答案
从 RxJS 5.5 开始,他们引入了 pipeable operators ,作为其中的一部分,他们从 do
切换到 tap
(以免与保留的 JavaScript 关键字冲突)。
要更新您的代码,首先更改您的导入:
import { Observable } from 'rxjs/Observable';
import { tap } from 'rxjs/operators';
然后将您的代码更改为:
Observable.from([1,2]).pipe(
tap((i: number) => {
console.log(i);
})
);
关于angular - rxjs 和 WebStorm,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49371748/