RxJS:转换运算符buffer

缓冲区对可观察对象进行操作,并将参数作为可观察对象。它将开始对数组中其原始可观察对象发出的值进行缓冲,并在将可观察对象作为参数发出时发出相同的值。一旦将作为对象的observable发出,则重置缓冲区并再次开始对原始缓冲区进行缓冲,直到输入observable发出并且重复相同的场景为止。

语法

buffer(input_observable: Observable): Observable

参量

input_observable-将使缓冲区发出值的可观察值。例如,单击按钮。

返回值

将返回一个observable,它将具有一个缓冲值数组。我们将通过一个示例来了解buffer()运算符的工作原理。

在下面的示例中,我们将使用按钮单击作为可观察的输入进行缓冲。1s的间隔将与原始可观察到的调用缓冲区有关。缓冲区将收集在给定时间间隔内传递的点击次数。

import { fromEvent, interval } from 'rxjs';
import { buffer } from 'rxjs/operators';

let btn = document.getElementById("btnclick");

let btn_clicks = fromEvent(btn, 'click');
let interval_events = interval(1000);
let buffered_array = interval_events.pipe(buffer(btn_clicks));
buffered_array.subscribe(arr => console.log(arr));

输出

RxJS:转换运算符buffer

作者:terry,如若转载,请注明出处:https://www.web176.com/rxjs/1823.html

(0)
打赏 支付宝 支付宝 微信 微信
terryterry
上一篇 2021年2月8日 下午3:16
下一篇 2021年2月8日 下午3:21

相关推荐

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注