Javascript 角度模块需要定义两次
我一直在玩一些角度代码,我发现页面上有两次Javascript 角度模块需要定义两次,javascript,angularjs,Javascript,Angularjs,我一直在玩一些角度代码,我发现页面上有两次app.controllers。一次进入应用程序模块顶部,一次进入底部。但当我删除其中一个时,代码就会中断。我不知道你为什么需要这两个,因为app.services不需要它,也不需要指令或过滤器。对原因有什么见解吗 (function () { angular .module('app', [ 'app.controllers', 'app.services', 'app.direc
app.controllers
。一次进入应用程序模块顶部,一次进入底部。但当我删除其中一个时,代码就会中断。我不知道你为什么需要这两个,因为app.services
不需要它,也不需要指令或过滤器。对原因有什么见解吗
(function () {
angular
.module('app',
[
'app.controllers',
'app.services',
'app.directives',
'app.filters'
]
)
.config(['$sceDelegateProvider','$routeProvider',
function ($sceDelegateProvider, $routeProvider) {
$sceDelegateProvider.resourceUrlWhitelist([
'self',
'https://maps.google.com/**']);
$routeProvider
// Home
.when('/',
{
templateUrl: 'partials/home.html'
}
)
// Default
.otherwise('/');
}
]
);
angular.module('app.controllers', []);
}());
此代码:
.module('app', [
'app.controllers',
'app.services',
'app.directives',
'app.filters'
]);
正在创建名为app
的新模块。在[]
中,您将找到依赖项模块的列表<代码>应用程序控制器是您的应用程序依赖项之一
鉴于本守则:
angular.module('app.controllers', []);
正在创建名为app.controllers的新模块,该模块没有依赖项=>[]
(空数组)
概括
angular.module('module_NAME',[])代码>(注意有[]
)
angular.module('module_NAME')代码>
app.controllers
)有助于了解模块xx.yy依赖于xx(app.controllers
是app
的依赖项)app.controllers是一个单独的模块,在顶部导入主模块,然后在底部定义。真想不到它能起作用。另请看被调用函数的结尾。。应该是这样的:(函数(){}();好的,这是有道理的,但是为什么app.filters、services和directive不需要创建一个新模块呢?我假设它们是在另一个文件中定义的?!在单独的文件中分离AngularJS模块是很常见的,它们可能只是在文件的顶部而不是在这个文件中完成,这使得它发生的情况不那么明显。是的,我只是在它们各自的文件中找到了它们。谢谢