缓冲区对可观察对象进行操作,并将参数作为可观察对象。它将开始对数组中其原始可观察对象发出的值进行缓冲,并在将可观察对象作为参数发出时发出相同的值。一旦将作为对象的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));
输出
作者:terry,如若转载,请注明出处:https://www.web176.com/rxjs/1823.html