6

RxJs 5.5 版引入了管道操作符,以便更容易组合RxJs操作符,并在这些情况下使摇树更有效。我的问题是,如果您只打算使用一个运算符,您应该使用管道运算符吗?

考虑以下示例:

someObservable.map(mappingLogicMethod).subscribe(x => console.log(x));

对比

someObservable.pipe(map(mappingLogicMethod)).subscribe(x => console.log(x));

在这种只使用一个运算符的情况下,最合适的方法是什么?

4

1 回答 1

3

简短的回答是“你可以跳过管道,但你不应该”,因为正如马丁pipe在评论中提到的那样,在 6.0 版本之前,运算符不是强制性的(所以版本 < 6 不是必须的),如果你包括你可以使用链接运算符的旧方式(因此实际上可以在任何地方使用旧方式,直到最新的 6. 版本)。rxjs-compact

让我们深入探讨一下:“为什么你不应该使用它

从 5.5 版本开始,管道操作符可以使用(但不是强制的)并且通常是首选,因为(当时)我们都知道在下一个版本中所有操作符都将被包裹在pipe5.5<= 中6 像一个迁移窗口,到新的方式。

尽管我们现在处于 6+ 版本并且使用pipe是默认行为,但只要您还安装.rxjs 仍然支持旧的链接(no ) 。piperxjs-compat

所以答案是:如果你正在使用rxjs 5.5+,并且你想利用 tree shaking 并按照新标准编写可读代码(正如评论中 carant 所提到的)?

“您必须始终使用管道”

于 2019-02-06T08:02:05.197 回答