Rxjs SubjectReplay Example
by jacobwsmith
HTML
<script src="https://cdnjs.cloudflare.com/ajax/libs/rxjs/5.4.0/Rx.min.js"></script>
JavaScript
console.clear();
// mimic service
const myDate = () => { return new Date().getTime()};
const database$ = Rx.Observable.of('hello from database: ' + myDate()).delay(1000);
const data$ = new Rx.ReplaySubject();
// component 1
data$.subscribe(res => console.log('component1: ',res));
database$.subscribe(res => {
data$.next(res);
})
setTimeout(() => {
// component 2
data$.next('form update')
}, 2000);
setTimeout(() => {
// component 2
data$.subscribe(res => console.log('component2: ', res));
}, 3000);