Javascript Angular.js新手到忍者控制器

Javascript Angular.js新手到忍者控制器,javascript,angularjs,controllers,Javascript,Angularjs,Controllers,我一直在尝试使用Angular.js初学者来学习Angular.js。 到目前为止,我遇到的主要问题是,在示例中,您必须创建文件app.js和controller.js 主模块在app.js和controllers.js中声明为依赖项: angular.module('myApp', [ 'myApp.controllers', 'ngRoute' ]); 在controllers.js中,控制器声明如下: angular.module('myApp.controllers').control

我一直在尝试使用Angular.js初学者来学习Angular.js。 到目前为止,我遇到的主要问题是,在示例中,您必须创建文件app.js和controller.js

主模块在app.js和controllers.js中声明为依赖项:

angular.module('myApp', [
'myApp.controllers',
'ngRoute'
]);
在controllers.js中,控制器声明如下:

angular.module('myApp.controllers').controller('BookController', function($scope){
$scope.name="Scope for BookController";
});
但它从来没有像那样工作过,我必须这样做,并将所有内容保存在同一个文件中

var app=angular.module('myApp', [
'myApp.controllers',
'ngRoute'
]);
app.controller('BookController', function($scope){
$scope.name="Scope for BookController";
});

有人能告诉我怎么了吗?谢谢。

你的调试器怎么说


我猜你加载文件的顺序不对。你看,你必须首先定义myApp.controllers才能在myApp中加载它,因此确保首先注入controllers.js,然后注入app.js。

请确保按照head标记中的以下顺序加载文件

<script src="/path_to/angular/angular.js"></script>
<script src="/path_to/app.js"></script>
<script src="/path_to_controllers/controllers.js"></script>

希望这能解决您的问题。

我认为app.js需要最后加载,因为它能解决所有依赖项,对吗?但除此之外,这是非常正确的。是的,这就是问题所在。谢谢大家!@你有一个正确的观点,但是如果你看到代码,我已经在app.js中声明了myApp.controllers,因此我首先加载了它。好的,这是另一种方式。是的,这就是问题所在。谢谢
myApp.controllers.controller('BookController', function($scope){
   $scope.name="Scope for BookController";
});