【发布时间】:2019-09-19 19:54:20
【问题描述】:
我需要一个 observable,它发出一个由先前值组成的数组,最多 X 个值。
基本上,类似于bufferCount(),只是我希望它立即发出并保持运行历史记录。
of(1,2,3,4,5,6,7,8,9).pipe(
bufferHistory(3) // <-- something like this
).subscribe(v => console.log(v));
// starts
// [1]
// [2,1]
// [3,2,1]
// [4,3,2]
// [5,4,3]
// [6,5,4]
// [7,6,5]
// [8,7,6]
// [9,8,7]
// competes
我找不到执行此操作的 Rxjs 6 运算符,最接近的是 bufferCount(),但它在每个数组发出后重置。
数组输出的顺序并不重要。它可以是[3,2,1] 或[1,2,3],因为这只是目前的语义。
【问题讨论】:
标签: javascript angular rxjs rxjs6