Wie wird die Gesamtzahl der Uhren auf einer Seite gezählt?
Gibt es in JavaScript eine Möglichkeit, die Anzahl der eckigen Uhren auf der gesamten Seite zu zählen?
Wir gebrauchenBatarang, aber es entspricht nicht immer unseren Bedürfnissen. Unsere Anwendung ist groß und wir sind daran interessiert, mithilfe automatisierter Tests zu überprüfen, ob die Anzahl der Uhren zu hoch ist.
Es wäre auch nützlich, die Uhren pro Controller zu zählen.
Bearbeiten: hier ist mein Versuch. Es zählt Uhren in allem mit Klasse ng-Umfang.
(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;
})();