Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/typescript/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 什么替代了Subject.prototype.hasObservators_Javascript_Typescript_Rxjs5 - Fatal编程技术网

Javascript 什么替代了Subject.prototype.hasObservators

Javascript 什么替代了Subject.prototype.hasObservators,javascript,typescript,rxjs5,Javascript,Typescript,Rxjs5,在RxJS版本4中,有一种方法hasObservators在主题上,它似乎已被删除,我正在尝试迁移。如何迁移页面上未列出此方法删除 hasObservers: function () { checkDisposed(this); return this.observers.length > 0; } 如果主题在调用next之前有订户,那么获取布尔值的另一种解决方案是什么?在rxjs 5中似乎没有类似的函数。但您可以添加自己的: Subject.prototype.hasObservers

在RxJS版本4中,有一种方法hasObservators在主题上,它似乎已被删除,我正在尝试迁移。如何迁移页面上未列出此方法删除

hasObservers: function () { checkDisposed(this); return this.observers.length > 0; }

如果主题在调用next之前有订户,那么获取布尔值的另一种解决方案是什么?

在rxjs 5中似乎没有类似的函数。但您可以添加自己的:

Subject.prototype.hasObservers=函数hasObservers(){
如果(本节已结束){
抛出新的ObjectUnsubscribedError();
}
返回this.observators.length>0;
};

如果查看源代码,您会发现它是一个公共属性,因此您可以直接访问它:

import { Subject } from 'rxjs/Subject';

let s = new Subject();
s.subscribe(val => val);
s.subscribe(val => val);

console.log(s.observers.length > 0);

这将打印
true

请注意,在对主题调用
取消订阅
后,
观察者
等于
null