Rxjs-transformation-operator-buffer

提供:Dev Guides
移動先:案内検索

RxJS-変換演算子バッファー

バッファはオブザーバブルで動作し、オブザーバブルとして引数を取ります。 これは、元のオブザーバブルで放出された値を配列でバッファリングし始め、引数として取得されたオブザーバブルが放出されたときに同じ値を放出します。 引数として取得されたオブザーバブルが発行されると、バッファがリセットされ、入力オブザーバブルが発行されて同じシナリオが繰り返されるまで、元のオブザーバが再びバッファリングされます。

構文

buffer(input_observable: Observable): Observable

パラメーター

*_input_observable_* -バッファに値を出力させるオブザーバブル。 たとえば、ボタンをクリックします。

戻り値

バッファリングされた値の配列を持つオブザーバブルが返されます。 buffer()演算子の働きを理解するために、例に取り組みます。

以下の例では、バッファへの監視可能な入力としてボタンクリックを使用します。 1の間隔は、バッファーが呼び出される元の観測値と同じになります。 バッファーは、指定された時間間隔で渡されたクリックを収集します。

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));

出力

バッファオペレーター