Como contar o número total de relógios em uma página?
Existe uma maneira, em JavaScript, para contar o número de relógios angulares em toda a página?
Nós usamosBatarang, mas nem sempre atende às nossas necessidades. Nosso aplicativo é grande e estamos interessados em usar testes automatizados para verificar se a contagem de relógios aumenta muito.
Também seria útil contar os relógios em uma base por controlador.
Editar: aqui está minha tentativa. Conta relógios em tudo com classe ng-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;
})();