Angular 服务在后续调用中变为未定义
Angular service becomes undefined in subsequent calls
我有一个在 ngOnInit 上运行良好的服务,但是当我设置一个计时器并稍后调用它时,由于某种原因它变得未定义。
编辑:这是我的构造函数:
constructor(private service: SomeService) { }
我尝试创建一个 属性 私有服务并在构造函数中这样设置它:
this.service = service
但是还是没有解决问题。我想通过这样做,我会保留对 SomeService 的静态实例的引用。
我这样调用它:
setTimeout(this.getData, 5000)
getData(): void {
// Some HTTP call
}
您在 ngOnInit
中有正确的 this
上下文,但在后续调用中丢失了它。
如果您能提供代码就好了,但是没有它很难提供正确的解决方案。不管怎样,this
就是原因。
我有一个在 ngOnInit 上运行良好的服务,但是当我设置一个计时器并稍后调用它时,由于某种原因它变得未定义。
编辑:这是我的构造函数:
constructor(private service: SomeService) { }
我尝试创建一个 属性 私有服务并在构造函数中这样设置它:
this.service = service
但是还是没有解决问题。我想通过这样做,我会保留对 SomeService 的静态实例的引用。
我这样调用它:
setTimeout(this.getData, 5000)
getData(): void {
// Some HTTP call
}
您在 ngOnInit
中有正确的 this
上下文,但在后续调用中丢失了它。
如果您能提供代码就好了,但是没有它很难提供正确的解决方案。不管怎样,this
就是原因。