Javascript 反应式运算符,与bufferWhen类似,但仅适用于最新变量
我在反应式网站上搜索了各种运营商。我无法弄清楚如何设置rx操作符链,以便它存储最近的可观察对象,直到另一个可观察对象允许它被释放 例如:Javascript 反应式运算符,与bufferWhen类似,但仅适用于最新变量,javascript,redux,react-redux,rxjs,reactive,Javascript,Redux,React Redux,Rxjs,Reactive,我在反应式网站上搜索了各种运营商。我无法弄清楚如何设置rx操作符链,以便它存储最近的可观察对象,直到另一个可观察对象允许它被释放 例如: Source0: 0 . . 1 . . . 2 . 3 Source1: F F F F T F F F T T Result: . . . . 1 . . . 2 3 和代码一样 const result = (action$, store) => action$.ofType('SOME_TYPE').mostRecent(_ =>
Source0: 0 . . 1 . . . 2 . 3
Source1: F F F F T F F F T T
Result: . . . . 1 . . . 2 3
和代码一样
const result = (action$, store) =>
action$.ofType('SOME_TYPE').mostRecent(_ => store.getState().REDUCER.saving);
首先使用
组合测试
,然后使用过滤器
,最后可以使用映射
获取所需数据:
source0.combineLatest(source1).filter(([s0, s1])=>s1).map(([s0,s1])=>s0);
这太近了。我意识到的唯一问题是Source1不是可观察的。这是redux商店的一个值。我更喜欢它在到达source1点时调用redux的store.getState。如何合并?如果source1不是可观察的,它可能会转换为可观察的,例如:Observable.of(source1)或new Subject().next(source1)