Angular服务在后续调用中变得不确定

问题描述

我有一个可以在ngOnInit上正常运行的服务,但是当我设置计时器并在以后调用它时,由于某种原因,它变得不确定。

编辑:这是我的构造函数

constructor(private service: SomeService) { }

我试图创建一个属性私有服务,并在构造函数中设置如下:

 this.service = service

但这仍然不能解决问题。我认为通过这种方式,可以保留对SomeService静态实例的引用。

然后我这样调用它:

setTimeout(this.getData,5000)

getData(): void {
    // Some HTTP call
}

解决方法

您在this中拥有正确的ngOnInit上下文,但是在随后的调用中丢失了它。

如果您提供了代码,那将是很好的,但是,如果没有代码,则很难提供正确的解决方案。无论如何,this是原因。