0

我正在使用 Angular 和 rxjs 5.5,并且正在尝试让此代码与新的管道运算符一起使用。

this.store
  .select(state => state.userState)
  .filter(userState => userState.loaded)
  .do(userState => do_something)
  .takeWhile(userState => !userState.loaded)
  .subscribe();

所以基本上,等到用户被加载,然后做一些事情并终止 observable。它会是这样的:

this.store
  .select(state => state.userState)
  .pipe(
    filter(userState => userState.loaded),
    do(userState => do_something),
    takeWhile(userState => !userState.loaded)
  )
  .subscribe;

但似乎 do 运算符不再在运算符列表中,那么我该如何实现呢?我不想使用 take(1) 或类似的。

谢谢!

4

1 回答 1

1

do运算符重命名为,tap从 rxjs 5.5 开始。

于 2018-02-14T12:02:38.603 回答