将.withLatestFrom与单值Observable结合使用

时间:2017-10-20 18:55:23

标签: angular ngrx-store

在一个ngrx / store Angular应用程序中,我需要在一个地方强制执行,我需要从商店中获取最新值并进一步传递。

我需要以某种方式使用.withLatestFrom(),因为它知道它不是静态方法。

所以我想我会将.withLatestFrom()运算符与一个简单的Observable.of(null)结合起来。但这并不起作用。不知道为什么。

所以这会奏效:

Observable.of(null)
  .do(val => console.log('value', val))
  .subscribe();

但结合它不会:

Observable.of(null)
  .withLatestFrom(this.myStoreValues$)
  .do(args => console.log('with', args))
  .subscribe();

是否有解决方法?

1 个答案:

答案 0 :(得分:0)

combineLatest运算符可以帮助您。基本上,当有变化时,它会流式传输来自多个源的输出。在您的情况下,您的唯一流可以合并如下。

Observable.combineLatest(this.myStoreValues$)
.do(args => console.log('with', args))
  .subscribe();