J'ai une croissance en croissance angular. De temps en temps, je gâche les choses et obtenez une erreur du type:
[$injector:modulerr] Failed to instantiate module App due to:
Il est souvent très difficile de trouver l'erreur en fonction du message d'erreur, surtout s'il existe de nombreux fichiers avec divers contrôleurs, etc.
Existe-t-il un moyen de déboguer ces erreurs dans l'un ou l'autre Chrome ou firefox?
Juste pour illustrer.
C'est ce que vous obtenez lorsque vous chargez Minifiée version de Angular (angular.min.js
):
Error: $injector:modulerr
Module Error
Failed to instantiate module eduApp due to:
Error: [$injector:modulerr] http://errors.angularjs.org/1.4.7/$injector/modulerr?p0=e...)
at Error (native)
at http://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js:6:416
at http://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js:38:184
at m (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js:7:322)
at h (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js:37:275)
at http://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js:37:444
at m (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js:7:322)
at h (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js:37:275)
at fb (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js:41:35)
at d (http://ajax.googleapis.com/ajax/libs/angularjs/1.4.7/angular.min.js:19:463
Et c'est ce que vous obtenez lorsque vous utilisez non ciblé version (angular.js
):
Error: $injector:nomod
Module Unavailable
Module 'ui.bootstrap' is not available! You either misspelled the module name or forgot to load it. If registering a module ensure that you specify the dependencies as the second argument.
La première erreur est vraiment douloureuse à résoudre. Le second est beaucoup plus facile.
Joyeux codage!
Angularjs minifiée me donne des erreurs illisibles
... Utilisez la version non infilonde dans le développement pour faciliter la déboguer.
J'ai trouvé l'approche suivante pour être un peu utile. Utilisez local angular.js
fichier afin que vous puissiez le modifier:
angular.js
déposerMessage = message + '\ nhttp: //errors.angularjs.org/1.3.5/' + [.____] (module? Module + '/'/':' ') + code;
console.log (message);
Pris à partir d'ici: http://www.chrisgmyr.com/2014/08/debugging-Error-Injectormodulerr-in-angularjs/