gpt4 book ai didi

javascript - RxJS 缓冲区或缓冲区大小限制

转载 作者:行者123 更新时间:2023-12-05 01:22:13 25 4
gpt4 key购买 nike

我需要具有输出大小限制的 buffer 功能。假设我有一个可观察流 myInterval,我想使用可观察的通知程序 bufferBy 来控制输出,但是当通知程序触发时,我想限制发出的项目数量。 buffer 没有这样的重载,但它说明了我想要实现的目标。

const maxBufferSize = 5;
const myInterval = interval(1000);
const bufferBy = fromEvent(document, 'click');

const bufferedInterval = myInterval.pipe(buffer(bufferBy, maxBufferSize));

// ex. output: [1,2,3] ... [4,5,6,7,8] ... [9,10]

应该是无损的。如何做到这一点?

最佳答案

也许就是这样?

window运算符(operator)

const maxBufferSize = 5;
const myInterval = interval(1000);
const bufferBy$ = fromEvent(document, 'click');

myInterval.pipe(
window(bufferBy$),
mergeMap(bufferCount(maxBufferSize)),
).subscribe(console.log);

https://stackblitz.com/edit/szp6ke

关于javascript - RxJS 缓冲区或缓冲区大小限制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74378196/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com