我收到[Violation]'setInterval'处理程序在chrome dev中接受N ms警告,然后该应用程序被冻结

时间:2018-05-23 06:58:04

标签: javascript typescript google-chrome setinterval

在运行setInterval调用时,我遇到了这个问题。 [违规]'setInterval'处理程序占用了ms 根据我的理解,当我们在setInterval中编写代码时会遇到这个问题,这需要更多的时间来执行。我的问题是如果我无法改变在setInterval中运行的代码,如何解决这个问题。

StateHasChanged()

当self.filterObject未定义时,上面的代码工作正常,但是当它不是时,它需要在self.getFilteredListOfTurbine中进行额外的过滤。

let cardInterval = setInterval(() => {
    if (self.filterObject != undefined) {
      self.getFilteredListOfTurbine(self.globalFilterService.getUpdatedTurbineListWithOperatingMode(self.listOfTurbine)).then((response) => {
        self.cardData.turbines = response;
        self.cardData.recalculate();
        observable.next(self.cardData);
      })
    } else {
      self.cardData.turbines = self.globalFilterService.getUpdatedTurbineListWithOperatingMode(self.listOfTurbine);
      self.cardData.recalculate();
      observable.next(self.cardData);
    }
  }, 1000);

}

我觉得我不能在这里改变过滤的逻辑。请帮我解决这个违规问题。

由于

0 个答案:

没有答案