为什么主题完成后也可以调用订阅



根据大多数博客,一旦我们调用complete,我们就不需要明确取消订阅主题。在调用complete后,我尝试订阅该主题。完整的回调仍在执行。

let s = new Subject();
s.complete();
s.subscribe(
() => {
console.log("next");
},
() => {},
() => {
console.log("complete");
}
);

输出:完整

为什么主题完成后才允许订阅?

在这种情况下,首先发送一个"完整"通知,然后立即取消订阅。因此,它仍然认为您不必手动取消绑定。

如果您首先想知道订阅有什么用,可以考虑一个例子,将isEmpty运算符应用于主题,并根据该运算符所附加的值执行操作。

相关内容

最新更新