216

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

4

3 回答 3

404

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

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

API 参考

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

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

相反,如果您打算使用angular-ui-router等,那么只需$routeProvider 从您的模块中删除依赖.config()项并将其替换为选择的相关提供程序(例如$stateProvider)。然后,您将使用ui.router依赖项:

var app = angular.module('MyApp', ['ui.router', ...]);
于 2013-08-28T07:34:41.347 回答
41

添加到斯科蒂的答案:

选项 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”添加为依赖项。

解释: var app = angular.module('myapp', ['ngRoute']);

干杯!!!

于 2013-10-24T04:26:45.880 回答
3

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

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

咖啡语法:

app.controller 'StoreController', Array '$http', ($http) ->
  ...
于 2014-06-28T13:04:49.330 回答