【发布时间】:2023-03-22 23:03:01
【问题描述】:
我是 RxJS 的新手。我有特定的数组,我正在使用 Observable。
[a,b,c,d,e,f,g,h]
我想处理背压,每次处理 3 个元素。
我想这样拆分并发出:
[a,b,c] [d,e,f] [g,h]
我为此使用了 bufferCount(3)。但是 bufferCount 的问题在于它确实发出了最后一个间隔。因为最后一个区间只有 2 个元素。
这是我的示例代码
from(streamOfArr$).pipe(
flatMap(somefunc()),
bufferCount(3),
tap((x) => {
console.log('3', x);
}),
flatMap(somefunc1()),
如何在 bufferCount 中发出最后一个间隔。
【问题讨论】:
-
@miqh 是否有可能知道数组长度并检查数组中是否还有多少剩余项未发出,以及它们是否小于 buffermaxSize。然后 bufferMaxSize 可能会设置数组中的剩余项目或其他内容。
标签: javascript arrays rxjs vue-rx