Function takeUntil

  • Emits the values emitted by the source Observable until a notifier Observable emits a value.

    Lets values pass until a second Observable, notifier, emits a value. Then, it completes.

    takeUntil subscribes and begins mirroring the source Observable. It also monitors a second Observable, notifier that you provide. If the notifier emits a value, the output Observable stops mirroring the source Observable and completes. If the notifier doesn't emit any value and completes then takeUntil will pass all values.

    Example

    Tick every second until the first click happens

    import { interval, fromEvent, takeUntil } from 'rxjs';

    const source = interval(1000);
    const clicks = fromEvent(document, 'click');
    const result = source.pipe(takeUntil(clicks));
    result.subscribe(x => console.log(x));

    Type Parameters

    • T

    Parameters

    • notifier: ObservableInput<any>

      The Observable whose first emitted value will cause the output Observable of takeUntil to stop emitting values from the source Observable.

    Returns MonoTypeOperatorFunction<T>

    A function that returns an Observable that emits the values from the source Observable until notifier emits its first value.

    See

    • take
    • takeLast
    • takeWhile
    • skip