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

Angularjs 错误:[$injector:unpr]未知提供程序:$routeProvider,angularjs,Angularjs,我正在尝试让AngularJS 1.2 RC2应用程序启动并运行。目前,我一直在使用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() { // whe

我正在尝试让AngularJS 1.2 RC2应用程序启动并运行。目前,我一直在使用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']);
});
'use strict';

angular.module('myApp', []).
    config(['$routeProvider', function($routeProvider) {
        $routeProvider.otherwise({redirectTo: '/home'});
    }]);
在app.js中,我有以下内容:

$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']);
});
'use strict';

angular.module('myApp', []).
    config(['$routeProvider', function($routeProvider) {
        $routeProvider.otherwise({redirectTo: '/home'});
    }]);
运行此应用程序时,出现以下错误:

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

我读过一些其他的回复,比如1)注入“ngroute”或2)您需要在路由中定义控制器。我的问题是,我不知道如何注入ngroute。此外,我真的需要在路由中定义控制器吗?这种方法似乎不可扩展。我的应用程序可能有一千个视图。在我看来,似乎必须有一种方法来定义路由,而不必加载所有控制器。

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

在Angular 1.2中,他们将ngRoute设置为可选(因此您可以使用第三方路由提供商等),并且您必须在模块中明确依赖它,以及


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

angular.module('myApp', ['ngRoute'])
,我们还需要引用单独的angular-route.js文件

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


请参见

您是否尝试在
myApp
模块定义中添加ngRoute,如
angular.module('myApp',['ngRoute'))。
这个问题应该链接到angular js视频教程中,在讲师演示中一切都很完美。保存我的屁股。正在升级到Angular 1.2 Thanks当我试图从运行todo应用程序的“dist”版本时,这个答案救了我的命-所以谢谢你!那么,这是否意味着当您测试它时,您只需将其作为模块的参数提供,而不必在加载模块进行测试时将其作为参数提供?请记住。。。如果将路由放在它们自己的JS文件中,则还需要在该文件的依赖项中指定“ngRoute”模块。这个咬了我一口。。。我为app.js设置了依赖项,但没有在routes.js中设置