AngularJS通过 指令 将HTML属性进行了扩展。
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>
运行
使用 ng-init 指令在AngularJS开发中非常普遍。在控制器一节中你将会看到更好的初始化数据的方法。 |
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非常适合数据库CRUD(即创建,读取,更新和删除)操作。想象一下,如果这些对象来自于数据库呢? |
ng-app指令定义了AngularJS application的根元素。
当Web页面加载完成后, ng-app 指令将 auto-bootstrap (自动初始化)application。即自动初始化并引导AngularJS application执行。
在后面的章节中你将会学习到如何给 ng-app 指令指定一个值(例如ng-app="myModule"),从而与模块联系起来。
ng-init指令用于为AngularJS application初始化值。
一般情况下不需要使用ng-init指令,而是使用控制器或者模块来进行初始化工作。
在后面的章节中你将会学习到有关控制器和模块的相关内容。
ng-model指令用来将HTML控件(如input,select,textarea等)的值绑定到application数据。
ng-model指令还可以用来:
ng-repeat指令用来为数据集合(或者数组)中的每一个元素生成一个对应的HTML元素。