javascript - RX Subject 使用最后一个值添加新的 emit

标签 javascript rxjs frp subject

我有两个科目:a$ 和 b$。

var a$ = new Rx.Subject();
var b$ = new Rx.Subject();

当 b$ 发出一些东西时,需要取这个值并加上 a$ 最后发出的值。然后它需要把这个结果发送给a$。

a$ ---4----6------------->
b$ -------------3-------->

result

a$ ---4----6----9-------->
b$ -------------3-------->

我找不到这个任务的解决方案

最佳答案

您可能可以使用 withLatestFrom 运算符。例如:

b$.withLatestFrom(a$, function (b,a){return a+b})
  .subscribe(function(x){a.onNext(x)})

或更简洁:

b$.withLatestFrom(a$, function (b,a){return a+b})
  .subscribe(a)

关于javascript - RX Subject 使用最后一个值添加新的 emit,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37099738/

相关文章:

javascript - 将 .html 包含在 .html 中

javascript - onclick只刷新div内容,不刷新所有aspx页面

javascript - 如何使用 TypeScript 和 RxJs 串行执行一系列指令?

javascript - 如何让 async/await 等待 Observable 返回

haskell - mapA 用于可能阻塞的流处理器(异步电路)

javascript - 使用 Typescript + ngMock 模块

javascript - 使用 jsignature 降低 mousedown 灵敏度

angular - 使用 rxjs 运算符是否可以获得倒数第二个值

javascript - RxJS groupBy和combineAll运算符似乎省略了输出

python - 如何将异步操作映射到有序数据流并获得相同顺序的结果?