2

前几天我注意到了一些事情。我正在订阅Actions里面的流@ngrx/effects。我注意到(对我来说是一个问题)订阅Actions迟到的组件接收最后一个调度的操作。我可以看到这是因为内部的调度@ngrx/store程序是 aBehaviourSubject并引用了 RxJS 文档:

Rx.BehaviorSubject 类

表示随时间变化的值。观察者可以订阅主题以接收最后(或初始)值和所有后续通知。

不幸的是,我想订阅操作流而不检索最后一个值。它给我带来了一些问题,比如当用户返回页面时显示错误消息。

BehaviorSubjectSubject(我想要的方式)之间的区别在这里演示:

https://codepen.io/anon/pen/zwgype

有没有办法做到这一点?

4

1 回答 1

1

您可以使用“跳过”运算符跳过第一个值:

someBehaviorSubject.skip(1)
于 2017-05-31T23:38:28.200 回答