从AngularJS 1.0.7升级到1.2.0rc1时,我收到了这个错误。


ngRoute模块不再是核心angular.js文件的一部分。如果你继续使用$routeProvider,那么你现在需要在你的HTML中包含angular-route.js:

<script src="angular.js">
<script src="angular-route.js">

火参考

你还必须为你的应用程序添加ngRoute依赖项:

var app = angular.module('MyApp', ['ngRoute', ...]);

如果你打算使用angular-ui-router或类似的,那么只需从你的模块.config()中删除$routeProvider依赖项,并用所选的相关提供者(例如$stateProvider)替换它。然后使用ui。路由器的依赖:

var app = angular.module('MyApp', ['ui.router', ...]);

在斯科特的回答中补充道:

选项1: 你可以在JS文件中包含以下内容:

<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.0rc1/angular-route.min.js"></script>

选项2: 或者直接使用URL下载'angular-route.min.js'到本地。

然后(无论你选择什么选项)添加这个'ngRoute'作为依赖项。

explained: var app = angular。模块(’myapp’,[’ngRoute’]);

干杯! !


在我的情况下,这是因为文件缩小了错误的范围。使用数组!

app.controller('StoreController', ['$http', function($http) {
    ...
}]);

咖啡的语法:

app.controller 'StoreController', Array '$http', ($http) ->
  ...