RxJS: Operator takeWhile
Opublikowano: 15.09.2022 - tagi: JavaScript RxJS Operator
Operator takeWhile wysyła dane z obiektu Observable do momentu, gdy zdefiniowany warunek zostaje spełniony. Jeśli określony warunek nie zostanie spełniony dane z Observable przestają być wysyłane.
Przykład
import { interval } from 'rxjs';
import { takeWhile } from 'rxjs/operators';
const timer$ = interval(1000);
timer$.pipe(
takeWhile(value => value <= 3)
).subscribe(console.log);
// 0
// 1
// 2
// 3
Do operatora takeWhile przekazujemy funkcję, w której definiujemy warunek, jaki musi zostać spełniony, żeby dane były emitowane ze źródła. Jeśli tak zdefiniowany warunek nie zostanie spełniony obiekt Observable zakończy wysyłanie danych.