Следующий ответ расскажет вам о производительности цикла $ digest в режиме ожидания , т. Е. О производительности дайджеста, когда ни одно из ваших контрольных выражений не изменится. Это полезно, если ваше приложение кажется вялым, даже если представление не меняется. Для более сложных ситуаций см. Ответ aet.
Введите в консоль следующее:
angular.element(document).injector().invoke(function($rootScope) {
var a = performance.now();
$rootScope.$apply();
console.log(performance.now()-a);
})
Результат даст вам продолжительность цикла дайджеста в миллисекундах. Чем меньше число, тем лучше.
ЗАМЕТКА:
Доми отметил в комментариях:
angular.element(document)
мало что даст, если использовать ng-app
директиву для инициализации. В этом случае ng-app
вместо этого возьмите элемент. Например, делаяangular.element('#ng-app')
Вы также можете попробовать:
angular.element(document.querySelector('[ng-app]')).injector().invoke(function($rootScope) {
var a = performance.now();
$rootScope.$apply();
console.log(performance.now()-a);
})