RxJS 5, converting an observable to a BehaviorSubject(?)

前端 未结 3 1102
Happy的楠姐
Happy的楠姐 2020-12-31 02:53

I have a parent observable that, once it has a subscriber, will do a lookup and emit a single value, then complete.

I\'d like to convert that into an observable (or

3条回答
  •  死守一世寂寞
    2020-12-31 03:14

    I've implemented a method to convert Observables to BehaviorSubjects, as I think that the shareReplay method isn't very readable for future reference.

    import { Observable } from 'rxjs/Observable';
    import { BehaviorSubject } from 'rxjs/BehaviorSubject';
    
    export function convertObservableToBehaviorSubject(observable: Observable, initValue: T): BehaviorSubject {
        const subject = new BehaviorSubject(initValue);
    
        observable.subscribe(
            (x: T) => {
                subject.next(x);
            },
            (err: any) => {
                subject.error(err);
            },
            () => {
                subject.complete();
            },
        );
    
        return subject;
    }
    

提交回复
热议问题