bufferTime
Acumula valores del Observable fuente durante un periodo de tiempo
Descripción
Almacena valores en un array, y emite esos arrays periódicamente en el tiempo.

Acumula valores de la fuente durante un periodo de tiempo determinado por bufferTimeSpan. Si no se proporciona el argumento opcional bufferCreationInterval, se emitirá y reseteará el búfer cada bufferTimeSpan milisegundos. En el caso de que sí se proporcione, bufferTime abrirá y el búfer cada bufferCreationInterval milisegundos y lo cerrará (emitiendo y reseteándolo) cada bufferTimeSpan milisegundos. Cuando se proporcione el argumento opcional maxBufferSize, el búfer se cerrará o cada buffertimeSpan milisegundos o cuando alcance el tamaño especificado por maxBufferSize.
Ejemplos
Almacenar valores en un array durante un periodo de 5 segundos y emitir el array
import { bufferTime } from "rxjs/operators";
import { interval } from "rxjs";
const number$ = interval(1000);
number$.pipe(bufferTime(5000)).subscribe(console.log);
// Salida: [0, 1, 2, 3], [4, 5, 6, 7, 8]...Ejemplos de la documentación oficial
Cada segundo, emitir un array de eventos click
import { fromEvent } from "rxjs";
import { bufferTime } from "rxjs/operators";
const clicks = fromEvent(document, "click");
const buffered = clicks.pipe(bufferTime(1000));
buffered.subscribe((x) => console.log(x));Cada 5 segundos, emitir los eventos click de los siguientes 2 segundos
import { fromEvent } from "rxjs";
import { bufferTime } from "rxjs/operators";
const clicks = fromEvent(document, "click");
const buffered = clicks.pipe(bufferTime(2000, 5000));
buffered.subscribe((x) => console.log(x));Recursos adicionales
Last updated