我从 AngularJS 1.0.7升级到1.2.0rc1时收到此错误。
无法实例化module [$injector:unpr] 未知提供者:$routeProvider
IT技术
javascript
angularjs
routes
2021-03-13 00:26:51
3个回答
ngRoute module不再是核心angular.js
文件的一部分。如果你继续使用 $routeProvider 那么你现在需要angular-route.js
在你的 HTML 中包含:
<script src="angular.js">
<script src="angular-route.js">
您还必须ngRoute
为您的应用程序添加一个依赖项:
var app = angular.module('MyApp', ['ngRoute', ...]);
相反,如果您打算使用angular-ui-router
或类似的东西,那么只需$routeProvider
从您的module中删除依赖项.config()
并将其替换为相关的选择提供程序(例如$stateProvider
)。然后,您将使用ui.router
依赖项:
var app = angular.module('MyApp', ['ui.router', ...]);
添加到 scotty 的回答中:
选项 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']);
干杯!!!
在我的情况下,这是因为文件被缩小了错误的范围。使用数组!
app.controller('StoreController', ['$http', function($http) {
...
}]);
咖啡语法:
app.controller 'StoreController', Array '$http', ($http) ->
...
其它你可能感兴趣的问题