AngularJS 通过被称为 指令 的新属性来扩展 HTML。指令是扩展的 HTML 属性,带有前缀 ng-。
内置指令
1、ng-app 指令初始化一个 AngularJS 应用程序。
定义了 AngularJS 应用程序的 根元素。
2、ng-init 指令初始化应用程序数据。
通常情况下,不使用 ng-init。您将使用一个控制器或模块来代替它。
3、ng-model 指令把元素值(比如输入域的值)绑定到应用程序【一般是在控制器中定义的变量】。
4、ng-repeat 指令会重复一个 HTML 元素:
对于集合中(数组中)的每个项会 克隆一次 HTML 元素。
names=['Jani','Hege','Kai']
<ul>
<li ng-repeat="x in names">
{{ x }}
</li>
</ul>
HTML DOM指令
AngularJS 为 HTML DOM 元素的属性提供了绑定应用数据的指令。
5、ng-disabled 指令 直接绑定应用程序数据到 HTML 的 disabled 属性,不可用
<div ng-app="" ng-init="mySwitch=true">
<p><button ng-disabled="mySwitch">点我!</button></p>
<p><input type="checkbox" ng-model="mySwitch"/>按钮</p>
<p>
{{ mySwitch }}
</p>
ng-disabled 指令 绑定应用程序数据 "mySwitch" 到 HTML 的 disabled 属性。
ng-model 指令 绑定 "mySwitch" 到 HTML input checkbox 元素的内(value),只能是true或者false。
6、ng-show 指令隐藏或显示一个 HTML 元素。
您可以使用一个评估为 true or false 的表达式(比如 ng-show="hour < 12")来隐藏和显示 HTML 元素。
ng-hide 指令用于设置应用的一部分 不可见 。
ng-hide="true" 让 HTML 元素 不可见。
ng-hide="false" 让元素可见。
7、ng-click 指令定义了一个 AngularJS 单击事件
8、ng-view指令
<div ng-view></div>
该 div 内的 HTML 内容会根据路由的变化而变化。
自定义指令
除了 AngularJS 内置的指令外,我们还可以创建自定义指令。
你可以使用 .directive 函数来添加自定义的指令。
要调用自定义指令,HTML 元素上需要添加自定义指令名。
使用驼峰法来命名一个指令, runoobDirective, 但在使用它时需要以 - 分割, runoob-directive:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <script src="https://cdn.bootcss.com/angular.js/1.4.6/angular.min.js"></script> </head> <body ng-app="myApp"> <runoob-directive></runoob-directive> <script> var app = angular.module("myApp", []); app.directive("runoobDirective", function() { return { template : "<h1>自定义指令!</h1>" }; }); </script> </body> </html>