根据大多数博客,我们在致电完成后就无需明确取消订阅主题。在调用完成后,我尝试订阅该主题。完整的回叫仍在执行。
let s = new Subject();
s.complete();
s.subscribe(
() => {
console.log("next");
},
() => {},
() => {
console.log("complete");
}
);
输出:完成
为什么完成主题后才允许订阅主题?
答案 0 :(得分:1)
在这种情况下,首先发出“完成”通知,然后立即取消订阅。因此,它仍然认为您不必手动取消订阅。
如果您首先想知道订阅的用途,您可以考虑一个示例,其中将isEmpty
运算符应用于主题,然后根据该运算符的下一个值进行操作。