AngularJS透過指令將HTML屬性進行了擴充。
AngularJS指令
AngularJS指令是帶有ng-前綴的擴充HTML屬性。
ng-app指令用來初始化AngularJS application。
ng-init指令用來初始化application資料。
ng-model指令用來將HTML控制項(如input,select,textarea等)的值綁定到application資料。
<div ng-app="" ng-init="firstName='John'"> <p>Name: <input type="text" ng-model="firstName"></p> <p>You wrote: {{ firstName }}</p> </div>
ng-app指令同時也告訴AngularJS,它所在的
資料綁定
在上面的範例中,{{ firstName }}是一個AngularJS資料綁定表達式。
在AngularJS資料綁定中,AngularJS表達式使用AngularJS資料進行同步更新。
{{ firstName }}透過ng-model="firstName"同步更新資料。
<div ng-app="" ng-init="quantity=1;price=5"> Quantity: <input type="number" ng-model="quantity"> Costs: <input type="number" ng-model="price"> Total in dollar: {{ quantity * price }} </div>
Note 使用ng-init指令在AngularJS開發中非常普遍。在控制器一節你將會看到更好的初始化資料的方法。
重複HTML元素
ng-repeat指令用來重複建立一個HTML元素:
<div ng-app="" ng-init="names=['Jani','Hege','Kai']"> <ul> <li ng-repeat="x in names"> {{ x }} </li> </ul> </div>
在物件陣列上使用ng-repeat指令:
<div ng-app="" ng-init="names=[ {name:'Jani',country:'Norway'}, {name:'Hege',country:'Sweden'}, {name:'Kai',country:'Denmark'}]"> <ul> <li ng-repeat="x in names"> {{ x.name + ', ' + x.country }} </li> </ul> </div>
Note AngularJS非常適合資料庫CRUD(即創建,讀取,更新和刪除)操作。想像一下,如果這些物件來自於資料庫呢?
ng-app指令
ng-app指令定義了AngularJS application的根元素。
當Web頁面載入完成後,ng-app指令將auto-bootstrap(自動初始化)application。即自動初始化並引導AngularJS application執行。
在後面的章節中你將會學習到如何給ng-app指令指定一個值(例如ng-app="myModule"),從而與模組聯繫起來。
ng-init指令
ng-init指令用於為AngularJS application初始化值。
一般情況下不需要使用ng-init指令,而是使用控制器或模組來進行初始化工作。
在後面的章節中你將會學習到有關控制器和模組的相關內容。
ng-model指令
ng-model指令用來將HTML控制項(如input,select,textarea等)的值綁定到application資料。
ng-model指令還可以用來:
提供資料驗證(如驗證數字,email地址,必填項)。
提供資料的狀態(如invalid,dirty,touched,error)。
為HTML元素提供CSS樣式類別。
將HTML元素綁定到HTML表單。
ng-repeat指令
ng-repeat指令用來為資料集合(或陣列)中的每一個元素產生一個對應的HTML元素。
以上所述就是本文的全部內容了,希望大家能夠喜歡。