rxjs-compat 与 pipeline() 方法

1 rxjs angular

我曾经用 Observable 来链接方法,比如

Observable
.of('bla')
.map(text => 1)
.filter(value => value === 1)
.subscribe(value => console.log(value));
Run Code Online (Sandbox Code Playgroud)

但现在,我意识到从 Angular V6 开始,我们应该使用 pipeline() 方法,例如

Observable.of('bla').pipe(
map(text => 1),
filter(value => value === 1)
).subscribe(value => console.log(value));
Run Code Online (Sandbox Code Playgroud)

当我看到很多使用 pipeline() 的代码时,我想我应该使用它,但它真的是“强制的”吗?或者 rxjs-compat 可以解决问题吗?

wen*_*jun 5

RxJS compat只是一个向后兼容层,可以简化从 RxJS 5 到 RxJS 6 的更新/迁移过程。您不应该依赖RxJS compat任何长期开发,而是慢慢升级使用任何 RxJS 运算符的代码库。您可以阅读有关迁移指南的更多详细信息。

在 RxJS 6 中,RxJS 运算符现在使用pipe()实用程序链接(而不是点链接),因此它们也称为可管道运算符。

由于您正在使用 Angular,我建议您也查看 Angular更新指南,其中包括一系列更新 Angular 和 RxJs 版本的步骤。

另外,在 RxJS 6 中Observable.of()已被运算符取代。of()

of('bla')
  .pipe(
    map(text => 1),
    filter(value => value === 1)
  ).subscribe(value => console.log(value));
Run Code Online (Sandbox Code Playgroud)