MM
// RxJS v6+
import { interval, of } from 'rxjs';
import { scan, delay, repeat, mergeMap } from 'rxjs/operators';
const fakeRequest = of('response').pipe(delay(2000));
// output:
// ['response'],
// ['response','response'],
// ['response','response','response'],
// etc...
interval(1000)
.pipe(
mergeMap(_ => fakeRequest),
scan < string > ((all, current) => [...all, current], [])
)
.subscribe(console.log);

