首页 > 解决方案 > Rxjs:使用 bufferCount 时如何获取最后一个值

问题描述

bufferCount(x)缓冲区大小未达到x.

示例:下面的代码仅打印[0, 1]。我希望输出包含[2]某种条件后。

const subject = new Subject();

subject.asObservable()
  .pipe(bufferCount(2))
  .subscribe(console.log);

for(let i = 0; i < 3; i++) subject.next(i);

标签: javascriptrxjs

解决方案


你需要完成内部的 observable,像这样:

subject.complete();

然后[2]将按预期发出。


推荐阅读