如何缓冲最新值,直到另一个值通过rxjs到达另一个序列?

Woo*_*oge 7 javascript typescript rxjs5

我正在尝试在我的项目中使用 rxjs 。我有以下序列,我期望的是第一个序列仅在值到达另一个序列后才会被处理,并且仅保留第一个序列中的最新值。有什么建议吗?

s1$ |a---b----c-

s2$ |------o----
Run Code Online (Sandbox Code Playgroud)

预期结果:

s3$ |------b--c-
Run Code Online (Sandbox Code Playgroud)

Jul*_*ova -1

最后 + takeUntil 可以工作

这是一个例子:

let one$ = Rx.Observable.interval(1000);
let two$ = Rx.Observable.timer(5000, 1000).mapTo('stop');

one$
  .takeUntil(two$)
  .last()
  .subscribe(
     x=>console.log(x),
     err =>console.error(err),
     ()=>console.log('done')
  );
Run Code Online (Sandbox Code Playgroud)