I want to emit array items over time (a one second interval between each emit) and when all items have been emitted, repeat over and over.
I know how to do this, but
You can use the zip operator:
const interval$ = Rx.Observable.interval(1000); const items$ = Rx.Observable.from([1,2,3]); const itemsOverTime$ = interval$.zip(items$).repeat(); itemsOverTime$.subscribe(([time, val]) => { console.log(val); // 1 // 2 // 3 // 1 // 2 // 3 });