takeUntil

signature: takeUntil(notifier: Observable): Observable

넘겨받은 옵저버블이 값을 발생시킬 때까지 값을 발생시킵니다.

💡 구체적인 갯수의 값이 필요하면, take를 살펴보세요!

예시

예시 1: 타이머가 값을 발생시키기 전까지 값을 받습니다

( StackBlitz | jsBin | jsFiddle )

// RxJS v6+
import { interval, timer } from 'rxjs';
import { takeUntil } from 'rxjs/operators';

//매 1초마다 값을 발생시킵니다
const source = interval(1000);
//5초 뒤, 값을 발생시킵니다
const timer$ = timer(5000);
//타이머가 5초 뒤 값을 발생시키면, 완료시킵니다
const example = source.pipe(takeUntil(timer$));
//결과: 0,1,2,3
const subscribe = example.subscribe(val => console.log(val));

예시 2: 첫 5개의 짝수를 받습니다

( StackBlitz | jsBin | jsFiddle )

예시 3: 마우스가 올라갈 때까지, 마우스가 내려가는 마우스 이벤트를 받습니다

( StackBlitz )

관련 사용법

추가 자료

📂 Source Code: https://github.com/ReactiveX/rxjs/blob/master/src/internal/operators/takeUntil.ts

Last updated

Was this helpful?