【发布时间】:2023-03-16 20:06:02
【问题描述】:
当另一个流执行时,我有一个可连接的可观察对象:
const source1 = Rx.Observable.of([1,2,3,4,5])
.do(() => console.log('Do Something!'))
.map(() => "Always connected.")
.publish();
source1.subscribe((v) => console.log(v));
const connect = () => {
let c = false;
return () => {
if (!c) {
console.log("Get connected");
source1.connect();
c = true;
}
}
}
const source2 = Rx.Observable.fromEvent(document, 'click')
.do(() => console.log("execute!"))
.do(connect())
.switchMapTo(source1);
source2.subscribe((v) => console.log(v));
输出
"execute!"
"Get connected"
"Do Something!"
"Always connected."
进一步点击文档source1 将不再订阅,我的问题是,为什么?
【问题讨论】:
标签: javascript rxjs rxjs5