次のインポートを使用します。
import {Observable} from 'rxjs/Observable';
import 'rxjs/add/observable/of';
import 'rxjs/add/operator/delay';
これを試して:
let fakeResponse = [1,2,3];
let delayedObservable = Observable.of(fakeResponse).delay(5000);
delayedObservable.subscribe(data => console.log(data));
更新:RXJS 6
上記のソリューションは、RXJSの新しいバージョン(およびAngularなど)では実際には機能しなくなりました。
したがって、シナリオは、APIでチェックする項目の配列があるということです。APIは単一のアイテムのみを受け入れます。すべてのリクエストを一度に送信してAPIを強制終了したくありません。そのため、Observableストリーム上のアイテムを少し遅れてリリースする必要があります。
次のインポートを使用します。
import { from, of } from 'rxjs';
import { delay } from 'rxjs/internal/operators';
import { concatMap } from 'rxjs/internal/operators';
次に、次のコードを使用します。
const myArray = [1,2,3,4];
from(myArray).pipe(
concatMap( item => of(item).pipe ( delay( 1000 ) ))
).subscribe ( timedItem => {
console.log(timedItem)
});
基本的に、配列内のすべてのアイテムに対して新しい「遅延」Observableを作成します。おそらく他にも多くの方法がありますが、これは私にとっては問題なく機能し、「新しい」RXJS形式に準拠しています。