🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## `refCount`相关问题 定义: > `refCount` makes the multicasted Observable automatically start executing when the first subscriber arrives, and stop executing when the last subscriber leaves. - 方法`publish()`和`share()`的区别: > share() == publish().refCount() == multiCast(new Rx.Subject()).refCount() ``` const x = Rx.Observable.of(1) .do(x => console.log('side effect')) // publish = multicast(new Rx.Subject()).refCount() const y = x.multicast(new Rx.Subject()).refCount(); y.subscribe(console.log); y.subscribe(console.log); console.log('-------------------------'); // share = multicast(() => new Rx.Subject()).refCount() const z = x.multicast(() => new Rx.Subject()).refCount(); z.subscribe(console.log); z.subscribe(console.log); ``` 结果: ``` side effect 1 ------------------------- side effect 1 side effect 1 ``` - `publish()` 相关alias ``` publish = multicast + Subject publishReplay = multicast + ReplaySubject publishBehavior = multicast + BehaviorSubject publishLast = multicast + AsyncSubject ```