BehaviorSubject vs Observable?

前端 未结 10 2272
迷失自我
迷失自我 2020-11-22 02:17

I\'m looking into Angular RxJs patterns and I don\'t understand the difference between a BehaviorSubject and an Observable.

From my underst

10条回答
  •  情歌与酒
    2020-11-22 03:18

    BehaviorSubject vs Observable : RxJS has observers and observables, Rxjs offers a multiple classes to use with data streams, and one of them is a BehaviorSubject.

    Observables : Observables are lazy collections of multiple values over time.

    BehaviorSubject:A Subject that requires an initial value and emits its current value to new subscribers.

     // RxJS v6+
    import { BehaviorSubject } from 'rxjs';
    
    const subject = new BehaviorSubject(123);
    
    //two new subscribers will get initial value => output: 123, 123
    subject.subscribe(console.log);
    subject.subscribe(console.log);
    
    //two subscribers will get new value => output: 456, 456
    subject.next(456);
    
    //new subscriber will get latest value (456) => output: 456
    subject.subscribe(console.log);
    
    //all three subscribers will get new value => output: 789, 789, 789
    subject.next(789);
    
    // output: 123, 123, 456, 456, 456, 789, 789, 789
    

提交回复
热议问题