RxJS - 實用運算子 timeout
如果給定 timeout 之後源 Observable 沒有傳送一個值,這個運算子將丟擲一個錯誤。
語法
timeout(timeout: number | Date): Observable
引數
timeout − 輸入是 timeout;它可以是 number 型別的 timeout,也可以是源 Observable 必須傳送值的時間 timeout 的 Date 型別。
返回值
返回 Observable,它將根據給定的 timeout 停止。
示例
import { of, interval } from 'rxjs';
import { filter, timeout } from 'rxjs/operators';
let list1 = interval(1000);
let final_val = list1.pipe(timeout(new Date("October 01, 2019 10:40:00")));
final_val.subscribe(
x => console.log(x),
e => console.log(e),
() => console.log("Task complete")
);
Observable interval 將繼續執行,timeout 將指定為 new Date (“October 01, 2019 10:40:00”),所以在那個時間,timeout 將會發生,它會丟擲一個錯誤,如下所示。
輸出
廣告