RxJS delay

2020-10-14 10:02 更新

在给定的超时时间内延迟从源发出项目的时间。 直到给定的日期。

delay<T>(delay: number | Date, scheduler: SchedulerLike = async): MonoTypeOperatorFunction<T>

参量

延迟 延迟持续时间,以毫秒(a number)或 一个 Date直到其中源项的发射被延迟。
调度器 可选的。 默认值为 async。  该 SchedulerLike用于  管理处理每个项目时移的计时器。

returns

MonoTypeOperatorFunction<T>:一个可观察到的延迟排放源的方法 通过指定的超时或日期可观察到。

描述

时间将每个项目移动指定的数量 毫秒。

delay marble diagram

如果 delay 参数为数字,则此运算符会时移源 可观察到的时间(以毫秒为单位)。 相对的 值之间的时间间隔将保留。

如果 delay 参数为 Date,则此运算符会时移 在给定日期之前可以观察到的执行。

例子

将每次点击延迟一秒钟

import { fromEvent } from 'rxjs';
import { delay } from 'rxjs/operators';


const clicks = fromEvent(document, 'click');
const delayedClicks = clicks.pipe(delay(1000)); // each click emitted after 1 second
delayedClicks.subscribe(x => console.log(x));

将所有点击延迟到以后的某个日期

import { fromEvent } from 'rxjs';
import { delay } from 'rxjs/operators';


const clicks = fromEvent(document, 'click');
const date = new Date('March 15, 2050 12:00:00'); // in the future
const delayedClicks = clicks.pipe(delay(date)); // click emitted only after that date
delayedClicks.subscribe(x => console.log(x));

也可以看看

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号