我在IE上的AngularJS应用程序遇到性能问题,并开始分析此问题的根本原因。根本原因似乎是,使用了过多的观察程序,ng-repeat用于具有大量数据的表,几乎没有使用单向数据绑定,并且没有缓存静态数据。因此,总的来说,我发现,这不仅仅是一个IE问题。
但是,我也开始分析摘要圈并尝试跟踪它:
$rootScope.$watch(function () {
count += 1;
console.log('Count: ', count);
});
根据我的控制台输出,摘要周期每1秒触发一次。 在我看来,这是非常非常成问题的,因为到目前为止,我所读到的内容仅应在某些情况下触发,而不是连续触发。嗯,有一个定时的数据请求,但是只有每10秒一次……但是也许某些更改会触发另一个请求,依此类推。
我想找出我的代码的哪一部分触发了摘要循环,有没有办法做到这一点?
预先感谢
问题不是由包含表的视图引起的,我发现了隐藏的
$interval(function () { ... }, 1000)
在其他地方,这导致摘要周期每秒触发一次。