在RxJS 中 Observables 分为两种:Cold Observables 和 Hot Observables。
Cold Observables
Cold Observables 只有被 observers 订阅的时候,才会开始产生值。是单播的,有多少个订阅就会生成多少个订阅实例,每个订阅都是从第一个产生的值开始接收值,所以每个订阅接收到的值都是一样的。
Cold Observables 示例:
import { Observable } from 'rxjs';
let observable = new Observable((observer: any) => {
let count = 0;
let intervalId = setInterval(() => {
count++;
if (count < 3) {
observer.next(count);
} else {
observer.complete();
clearInterval(intervalId);
}
}, 1000);
});
observable.subscribe(
data => { console.log(`1st subscribe: ${data}`) },
(err) => { console.log(`1st subscribe err: ${err}`) },
() => { console.log(`1st subscribe complete`) });
se

本文详细解析了RxJS中的冷Observables和HotObservables,介绍了它们的订阅行为、示例和publish操作符的应用。理解这两种类型的Observables有助于优化异步流处理和性能。
最低0.47元/天 解锁文章
147

被折叠的 条评论
为什么被折叠?



