Skip to content

Latest commit

 

History

History
42 lines (30 loc) · 1.58 KB

delaywhen.md

File metadata and controls

42 lines (30 loc) · 1.58 KB

delayWhen

signature: delayWhen(selector: Function, sequence: Observable): Observable

Delay emitted values determined by provided function.

Examples

Example 1: Delay based on observable

( jsBin | jsFiddle )

import { interval } 'rxjs/observable/interval';
import { timer } 'rxjs/observable/timer';
import { delayWhen } from 'rxjs/operators';

//emit value every second
const message = interval(1000);
//emit value after five seconds
const delayForFiveSeconds = () => timer(5000);
//after 5 seconds, start emitting delayed interval values
const delayWhenExample = message.pipe(delayWhen(delayForFiveSeconds));
//log values, delayed for 5 seconds
//ex. output: 5s....1...2...3
const subscribe = delayWhenExample.subscribe(val => console.log(val));

Additional Resources


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