La seguente risposta indicherà la prestazione inattiva del ciclo $ digest, ad esempio, le prestazioni del digest quando nessuna delle espressioni di visualizzazione cambia. Questo è utile se la tua applicazione sembra lenta anche quando la vista non cambia. Per situazioni più complesse, vedere la risposta di Aet.
Digitare il seguente nella console:
angular.element(document).injector().invoke(function($rootScope) {
var a = performance.now();
$rootScope.$apply();
console.log(performance.now()-a);
})
Il risultato vi darà la durata del ciclo di digest, in millisecondi. Più piccolo è il numero, meglio è.
NOTA:
Domi notato nei commenti: angular.element(document)
non si produrrà più se è stato utilizzato la direttiva ng-app
per l'inizializzazione. In tal caso, prendi invece l'elemento ng-app
. Per esempio. facendo angular.element('#ng-app')
Potete anche provare:
angular.element(document.querySelector('[ng-app]')).injector().invoke(function($rootScope) {
var a = performance.now();
$rootScope.$apply();
console.log(performance.now()-a);
})
fonte
2014-04-14 17:27:39
Grazie. Ho appena provato e sembra molto utile. Sei in grado di pubblicare un breve video dimostrativo di come potresti usarlo su un sito per rilevare e riparare un problema di prestazioni? Sarebbe molto interessante. Grazie ancora. – Soferio
Questo sembra essere chiamato "grafico" e sembra un po 'diverso nella versione attuale (v. 51.0) di Chrome. –