Die folgende Antwort zeigt Ihnen die Leerlaufleistung der $ Digest-Schleife, dh die Leistung des Digests, wenn sich keiner Ihrer Überwachungsausdrücke ändert. Dies ist hilfreich, wenn Ihre Anwendung auch dann träge erscheint, wenn sich die Ansicht nicht ändert. Für komplexere Situationen siehe die Antwort von aet.
Geben Sie Folgendes in die Konsole ein:
angular.element(document).injector().invoke(function($rootScope) {
var a = performance.now();
$rootScope.$apply();
console.log(performance.now()-a);
})
Das Ergebnis gibt Ihnen die Dauer des Digest-Zyklus in Millisekunden an. Je kleiner die Zahl, desto besser.
HINWEIS:
Domi in den Kommentaren bemerkt:
angular.element(document)
wird nicht viel bringen, wenn Sie die ng-app
Direktive für die Initialisierung verwendet haben. In diesem Fall holen Sie sich ng-app
stattdessen das Element. ZB indem du es tustangular.element('#ng-app')
Sie können auch versuchen:
angular.element(document.querySelector('[ng-app]')).injector().invoke(function($rootScope) {
var a = performance.now();
$rootScope.$apply();
console.log(performance.now()-a);
})