为什么在创建角度应用程序时需要使用模块名称两次?

时间:2014-05-04 21:46:21

标签: angularjs module

var demoApp = angular.module( 'demoApp', [] );

为什么角度团队根本没有选择这样做:

var demoApp = angular.module ([]);

代替?

1 个答案:

答案 0 :(得分:1)

如果你不想,你不必。您可以编写以下任何内容,它们是相同的东西

var demoApp = angular.module('demoApp', []);
var diffApp = angular.module('demoApp', []);
angular.module('demoApp', []);

您为其指定的变量可以按照您想要的名称命名,但是您传递给module函数的名称是angular将在内部给出的名称。该名称必须与您稍后用于检索它的名称相同。例如,您可以执行以下操作

angular.module('demoApp', []);
angular.module('demoApp').controller('ctrl', function(){ ... });

这和做

完全一样
var myApp = angular.module('demoApp', []);
myApp.controller('ctrl', function() { ... });

当您为module函数提供第二个参数时,您将定义一个新模块。如果您只是为它提供一个字符串,那么您需要使用angular来检索模块。