RxJs取消订阅取消订阅描述未来订阅

RxJs取消订阅取消订阅描述未来订阅,rxjs,Rxjs,在RxJs中,取消订阅取消订阅描述了未来的订阅。为什么以及如何修复它 我的意思是: import { interval, Subscription } from "rxjs"; const subs = new Subscription(); subs.unsubscribe(); const sub = interval(1000).subscribe(r => console.log(r)); subs.add(sub); 我希望这段代码能够无限输出整数。但它

在RxJs中,取消订阅取消订阅描述了未来的订阅。为什么以及如何修复它

我的意思是:

import { interval, Subscription } from "rxjs";

const subs = new Subscription();
subs.unsubscribe();

const sub = interval(1000).subscribe(r => console.log(r));
subs.add(sub);

我希望这段代码能够无限输出整数。但它什么也不输出。为什么?

当您在
订阅中调用unsubscribe时,它会将其状态更改为closed
如果在it订阅关闭时有任何未来添加的订阅,它将立即取消所有未来传入订阅

这是旧版
订阅
中的部分源代码

         case 'object':
            if (subscription.closed || typeof subscription.unsubscribe !== 'function') {
                return subscription;
            }
            else if (this.closed) {
                subscription.unsubscribe();
                return subscription;
            }
            else if ....

当您在
订阅中调用unsubscribe时,它会将其状态更改为closed
如果在it订阅关闭时有任何未来添加的订阅,它将立即取消所有未来传入订阅

这是旧版
订阅
中的部分源代码

         case 'object':
            if (subscription.closed || typeof subscription.unsubscribe !== 'function') {
                return subscription;
            }
            else if (this.closed) {
                subscription.unsubscribe();
                return subscription;
            }
            else if ....