RxJS delay

2020-10-14 10:02 更新

在給定的超時時間內(nèi)延遲從源發(fā)出項目的時間。 直到給定的日期。

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

參量

延遲 延遲持續(xù)時間,以毫秒(a number)或 一個 Date直到其中源項的發(fā)射被延遲。
調(diào)度器 可選的。 默認(rèn)值為 async。  該 SchedulerLike用于  管理處理每個項目時移的計時器。

returns

MonoTypeOperatorFunction<T>:一個可觀察到的延遲排放源的方法 通過指定的超時或日期可觀察到。

描述

時間將每個項目移動指定的數(shù)量 毫秒。

delay marble diagram

如果 delay 參數(shù)為數(shù)字,則此運算符會時移源 可觀察到的時間(以毫秒為單位)。 相對的 值之間的時間間隔將保留。

如果 delay 參數(shù)為 Date,則此運算符會時移 在給定日期之前可以觀察到的執(zhí)行。

例子

將每次點擊延遲一秒鐘

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));

也可以看看

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號