首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >错误:[$injector:unpr]未知提供程序:$routeProvider

错误:[$injector:unpr]未知提供程序:$routeProvider
EN

Stack Overflow用户
提问于 2013-10-05 19:17:45
回答 2查看 133.8K关注 0票数 68

我正在尝试启动并运行AngularJS 1.2 RC2应用程序。目前,我一直在使用Angular Seed项目来尝试启动和运行我的应用程序。不幸的是,Angular Seed项目使用的是v1.0.7。在Angular Seed项目中,我将依赖项更新为:

$script([
  'res/js/angular-1.2.0-rc.2.js',
  'res/js/angular-route-1.2.0-rc.2.js',
  'res/js/app.js?v=2',
], function() {
  // when all is done, execute bootstrap angular application
  angular.bootstrap(document, ['myApp']);
});

在app.js中,我有以下内容:

'use strict';

angular.module('myApp', []).
    config(['$routeProvider', function($routeProvider) {
        $routeProvider.otherwise({redirectTo: '/home'});
    }]);

当我运行这个应用程序时,我得到了以下错误:

Error: [$injector:unpr] Unknown provider: $routeProvider

我读过一些其他的回复,比如1)注入'ngroute‘或者2)你需要在路由中定义控制器。我的问题是,我不知道如何注射ngroute。另外,我真的需要在路由中定义控制器吗?这种方法似乎不可伸缩。我的应用程序可能有上千的浏览量。在我看来,似乎必须有一种方法来定义路由,而不必加载所有的控制器。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-01-12 12:07:11

在angular 1.4 +中,除了添加依赖项

angular.module('myApp', ['ngRoute'])

,我们还需要引用单独的angular-route.js文件

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

请参阅https://docs.angularjs.org/api/ngRoute

票数 33
EN

Stack Overflow用户

发布于 2013-10-05 21:12:29

看起来您忘记在myApp依赖项中包含ngRoute模块了。

在Angular 1.2中,他们将ngRoute设置为可选的(因此您可以使用第三方路由提供商等)。您必须在模块中显式地依赖它,以及including the separate file

'use strict';

angular.module('myApp', ['ngRoute']).
    config(['$routeProvider', function($routeProvider) {
$routeProvider.otherwise({redirectTo: '/home'});
}]);
票数 144
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/19197182

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档