RxJS - 实用操作符 delayWhen

此操作符根据作为输入的另一个可观察对象的超时延迟从源可观察对象发出的值。

语法

delayWhen(timeoutSelector_func: Observable): Observable

参数

timeoutSelector_func − 是一个决定超时的可观察对象。

返回值

将返回一个可观察对象,该可观察对象将使用 timeoutSelector_func 输出来延迟源可观察对象。

示例

import { fromEvent, timer } from 'rxjs';
import { delayWhen } from 'rxjs/operators';

let btn = document.getElementById("btnclick");
let btn_clicks = fromEvent(btn, 'click');
let case1 = btn_clicks.pipe(delayWhen(() => timer(1000)),);
case1.subscribe(x => console.log(x));

我们已经为 delayWhen() 使用了一个可观察对象,当该可观察对象发出时,就会发出点击事件。

输出

delayWhen Operator