bufferWhen
연산자(operator) 정의: bufferWhen(closingSelector: function): Observable
Collect all values until closing selector emits, emit buffered values.
Examples
Example 1: Emit buffer based on interval
//emit value every 1 second
const oneSecondInterval = Rx.Observable.interval(1000);
//return an observable that emits value every 5 seconds
const fiveSecondInterval = () => Rx.Observable.interval(5000);
//every five seconds, emit buffered values
const bufferWhenExample = oneSecondInterval.bufferWhen(fiveSecondInterval);
//log values
//ex. output: [0,1,2,3]...[4,5,6,7,8]
const subscribe = bufferWhenExample.subscribe(val => console.log('Emitted Buffer: ', val));
Additional Resources
- bufferWhen - Official docs
Source Code: https://github.com/ReactiveX/rxjs/blob/master/src/operator/bufferWhen.ts