다음 가져 오기 사용 :
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의 최신 버전 (예 : 각도)에서는 더 이상 작동하지 않습니다.
그래서 시나리오는 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 형식을 준수합니다.