转载

AngularJS快速入门指南04:指令

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,它所在的<div>元素是AngularJS application的根元素,即作用域。

数据绑定

在上面的示例中,{{ 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>

运行

AngularJS快速入门指南04:指令 使用 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>

运行

AngularJS快速入门指南04:指令 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元素。

正文到此结束
Loading...