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就是原因。