AngularJS 指令
AngularJS指令用于扩展HTML。它们是以ng-前缀开始的特殊属性。让我们讨论以下指令:
- ng-app - 此指令启动一个AngularJS应用。
-
ng-init - 此指令初始化应用程序数据。
-
ng-model - 此指令定义在AngularJS中使用的变量模型。
-
ng-repeat - 此指令对集合中的每个项目重复HTML元素。
ng-app指令
ng-app指令开始一个AngularJS应用。它定义了根元素。当包含AngularJS应用的网页加载时,它会自动初始化或引导应用程序。它还用于在AngularJS应用中加载各种AngularJS模块。在下面的示例中,我们使用<div>
元素的ng-app属性定义了一个默认的AngularJS应用。
<div ng-app = "">
...
</div>
ng-init 指令
ng-init指令用于初始化AngularJS应用数据。它用于给变量赋值。在下面的示例中,我们初始化了一个包含国家的数组。我们使用JSON语法来定义国家数组。
<div ng-app = "" ng-init = "countries = [{locale:'en-US',name:'United States'},
{locale:'en-GB',name:'United Kingdom'}, {locale:'en-FR',name:'France'}]">
...
</div>
ng-model指令
ng-model指令定义了在AngularJS应用程序中要使用的模型/变量。在下面的例子中,我们定义了一个名为name的模型。
<div ng-app = "">
...
<p>Enter your Name: <input type = "text" ng-model = "name"></p>
</div>
ng-repeat指令
ng-repeat指令会为集合中的每个项目重复HTML元素。在下面的示例中,我们会遍历一个国家数组。
<div ng-app = "">
...
<p>List of Countries with locale:</p>
<ol>
<li ng-repeat = "country in countries">
{{ 'Country: ' + country.name + ', Locale: ' + country.locale }}
</li>
</ol>
</div>
示例
以下示例展示了所有上述指令的使用。
testAngularJS.htm
<html>
<head>
<title>AngularJS Directives</title>
</head>
<body>
<h1>Sample Application</h1>
<div ng-app = "" ng-init = "countries = [{locale:'en-US',name:'United States'},
{locale:'en-GB',name:'United Kingdom'}, {locale:'en-FR',name:'France'}]">
<p>Enter your Name: <input type = "text" ng-model = "name"></p>
<p>Hello <span ng-bind = "name"></span>!</p>
<p>List of Countries with locale:</p>
<ol>
<li ng-repeat = "country in countries">
{{ 'Country: ' + country.name + ', Locale: ' + country.locale }}
</li>
</ol>
</div>
<script src = "https://ajax.googleapis.com/ajax/libs/angularjs/1.3.14/angular.min.js">
</script>
</body>
</html>
输出
在web浏览器中打开文件 testAngularJS.htm 输入你的名字并查看结果。