滚动时角度2低fps速率

时间:2017-03-14 06:22:35

标签: angular typescript

我有一个问题,即有多个组件显示一行表。问题是当我scrooling页面时有一个巨大的fps下降。每个组件都从服务订阅数据数组。我不使用' ngDoCheck''但我仍然有一个fps下降:/。我使用chrome时间轴,我有很多事件(mousmove)。

可能是因为我有很多组件?我删除每个ngDoCheck,我观察当我将鼠标移到桌子上方时,任务管理器中的处理器大约使用50%。当我停止移动鼠标时它恢复正常

1 个答案:

答案 0 :(得分:0)

在Angulars区域外注册事件处理程序应该有所帮助,直到修复相关问题:

constructor(zone:NgZone, elRef:ElementRef) {
  zone.runOutsideAngular(() => elRef.nativeElement.addEventHandler('scroll', 
  (e) => {
    if(some criteria) {
      zone.run(() => {
        // update model here
      });
    }
  });
}

此外,表现手段仅在生产模式中有意义。

另见