最佳答案
有没有一种方法,在 JavaScript 中,计算整个页面上的角表的数量?
我们使用 蝙蝠怪,但它并不总是适合我们的需要。我们的应用程序很大,我们有兴趣使用自动化测试来检查手表数量是否上升过多。
以每个控制器为基础来计算手表数量也是有用的。
编辑 : 这里是我的尝试。它计数手表在所有类 n-scope。
(function () {
var elts = document.getElementsByClassName('ng-scope');
var watches = [];
var visited_ids = {};
for (var i=0; i < elts.length; i++) {
var scope = angular.element(elts[i]).scope();
if (scope.$id in visited_ids)
continue;
visited_ids[scope.$id] = true;
watches.push.apply(watches, scope.$$watchers);
}
return watches.length;
})();