Как я могу создать страстную наблюдаемость из горячей наблюдаемой?
AFAIK, наблюдаемый ленив.
import * as rxjs from 'rxjs'
const { filter, take, map } = rxjs.operators
function awesomeOpators() {
return take(1);
}
const numbers$ = new rxjs.Subject<number>();
const start$ = numbers$.pipe(
awesomeOpators(),
);
numbers$.next(1);
start$.subscribe((val) => {
// outputs 2
console.log(val)
})
numbers$.next(2)
Как я могу переписать awesomeOpators
такой, что beginWithLargeNumbe$
начинается с 1?
https://stackblitz.com/edit/rxjs-zqkz7r?file=main.ts
1 ответ
Вы можете использовать ReplaySubject вместо:
const numbers$ = new rxjs.ReplaySubject<number>();
Есть множество других способов. Вы не сказали нам, какую часть вы можете или не можете контролировать, так что это подойдет.