AngularJS : comment éviter l'erreur $injector:modulerr ?
Si vous venez de mettre à jour Angular à une version supérieure à la 1.2, l'utilisation de certaines méthodes peut poser problème.
Si vous venez de mettre à jour Angular à une version supérieure à la 1.2, l'utilisation des méthodes suivantes peut poser problème :
var app = angular.module('myapp', []); app.config(['$routeProvider', '$locationProvider', function($routeProvider, $locationProvider) { $locationProvider.html5Mode(true); $routeProvider. when('/pratique/pratique/', { templateUrl: 'test.html', controller: 'MonControleur' }). otherwise({ redirectTo: '/' }); } ]);
En effet, le message d'erreur suivant s'affiche lors de l'exécution du code :
Uncaught Error: [$injector:modulerr] http://errors.angularjs.org/1.2.0rc1/$injector/ modulerr?p0=muninn&p1=Error%...eapis.com%2Fajax%2Flibs% 2Fangularjs%2F1.2.0rc1%2Fangular.min.js%3A31%3A252).
Cette erreur provient de la mise à jour d'AngularJS en version 1.2. Depuis la version 1.2, le module ngRoute a été séparé du code source d'Angular. Si vous souhaitez utiliser ces méthodes, il faut au préalable inclure le module ngRoute et le préciser lors de l'instanciation de votre module :
<script src=https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular-route.min.js></script> //Dans le JavaScript : var app = angular.module('myapp', ['ngRoute']);