AngularJS 怎么可能识别模块的名称?
How is possible for AngularJS to recognise the name of a module?
我目前正在学习AngularJS,但我有点困惑。这是关于通过 ng-controller
将控制器分配给视图的非常非常基本的练习。我的网络应用程序包含两个文件(index.html 和 js.js):
index.html:
<html>
<head>
</head>
<body ng-app="simpleApp">
<h1>Welcome to my website!</h1>
<div ng-controller="mainController">
<h2>This is my personal website :)</h2>
</div>
<script src="lib/angular.js"></script>
<script src="js.js"></script>
</body>
</html>
js.js:
var myApp = angular.module("simpleApp", []);
myApp.controller("mainController", function() {
console.log("It controller really works!!");
});
在我看到的大多数 angular 示例中,angular 模块的全局范围变量具有相同的名称。但是我使用不同的(myApp
作为变量,simpleApp
作为模块的名称)我对代码有点奇怪,因为我分配了 mainController
,它是 AngularJS 通过 myApp 变量或通过 simpleApp 模块检测它?如果 ng-app=myApp
为什么它不起作用?
谢谢。
语法 angular.module('name', []);
创建并 returns 一个新模块。注意 []
定义了一个空的模块依赖集合。这很重要,因为当你创建一个模块时,你需要这个。
但是,您可以使用类似的语法将控制器添加到模块:
angular.module('name').controller(...
这通常是首选,因为它不会污染全局范围,而且一旦您开始跨物理文件拆分模块就更有意义。
现在回答你的问题。您的模块名称 simpleApp
是 always 您将用来指代新创建的模块的名称。 myApp
仅包含对具有该名称的模块的引用。
因此,Angular 使用的名称将始终是 simpleApp
。您将在 ng-app
中使用该名称(就像您所做的那样),以及可能需要模块名称的其他任何地方。例如,如果您将模块添加为另一个模块的依赖项,它看起来像:
angular.module('anotherModule', ['simpleApp']);
detecting it via myApp variable or via simpleApp module
Angular 正在通过名称 simpleApp
.
进行检测
我目前正在学习AngularJS,但我有点困惑。这是关于通过 ng-controller
将控制器分配给视图的非常非常基本的练习。我的网络应用程序包含两个文件(index.html 和 js.js):
index.html:
<html>
<head>
</head>
<body ng-app="simpleApp">
<h1>Welcome to my website!</h1>
<div ng-controller="mainController">
<h2>This is my personal website :)</h2>
</div>
<script src="lib/angular.js"></script>
<script src="js.js"></script>
</body>
</html>
js.js:
var myApp = angular.module("simpleApp", []);
myApp.controller("mainController", function() {
console.log("It controller really works!!");
});
在我看到的大多数 angular 示例中,angular 模块的全局范围变量具有相同的名称。但是我使用不同的(myApp
作为变量,simpleApp
作为模块的名称)我对代码有点奇怪,因为我分配了 mainController
,它是 AngularJS 通过 myApp 变量或通过 simpleApp 模块检测它?如果 ng-app=myApp
为什么它不起作用?
谢谢。
语法 angular.module('name', []);
创建并 returns 一个新模块。注意 []
定义了一个空的模块依赖集合。这很重要,因为当你创建一个模块时,你需要这个。
但是,您可以使用类似的语法将控制器添加到模块:
angular.module('name').controller(...
这通常是首选,因为它不会污染全局范围,而且一旦您开始跨物理文件拆分模块就更有意义。
现在回答你的问题。您的模块名称 simpleApp
是 always 您将用来指代新创建的模块的名称。 myApp
仅包含对具有该名称的模块的引用。
因此,Angular 使用的名称将始终是 simpleApp
。您将在 ng-app
中使用该名称(就像您所做的那样),以及可能需要模块名称的其他任何地方。例如,如果您将模块添加为另一个模块的依赖项,它看起来像:
angular.module('anotherModule', ['simpleApp']);
detecting it via myApp variable or via simpleApp module
Angular 正在通过名称 simpleApp
.