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>
![]() |
使用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非常适合数据库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元素。
AngularJS快速入门指南04:指令的更多相关文章
- AngularJS快速入门指南05:控制器
AngularJS控制器用来控制AngularJS applications的数据. AngularJS控制器就是普通的JavaScript对象. AngularJS控制器 AngularJS app ...
- AngularJS快速入门指南03:表达式
AngularJS通过表达式将数据绑定到HTML. AngularJS表达式 AngularJS表达式写在双大括号中:{{ 表达式语句 }}. AngularJS表达式绑定数据到HTML的方式与ng- ...
- AngularJS快速入门指南01:导言
AngularJS使用新的attributes扩展了HTML AngularJS对单页面应用的支持非常好(SPAs) AngularJS非常容易学习 现在就开始学习AngularJS吧! 关于本指南 ...
- AngularJS快速入门指南20:快速参考
thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...
- AngularJS快速入门指南19:示例代码
本文给出的大部分示例都可以直接运行,通过点击运行按钮来查看结果,同时支持在线编辑代码. <div ng-app=""> <p>Name: <input ...
- AngularJS快速入门指南18:Application
是时候创建一个真正的AngularJS单页面应用程序了(SPA). 一个AngularJS应用程序示例 你已经了解了足够多的内容来创建第一个AngularJS应用程序: My Note Save Cl ...
- AngularJS快速入门指南17:Includes
使用AngularJS,你可以在HTML中包含其它的HTML文件. 在HTML中包含其它HTML文件? 当前的HTML文档还不支持该功能.不过W3C建议在后续的HTML版本中增加HTML import ...
- AngularJS快速入门指南16:Bootstrap
thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...
- AngularJS快速入门指南14:数据验证
thead>tr>th, table.reference>tbody>tr>th, table.reference>tfoot>tr>th, table ...
随机推荐
- 解决IE中window.open打开链接refer丢失的问题
来源: http://www.coderanch.com/t/114767/HTML-CSS-JavaScript/nClick-window-open-loses-referrerHello,I h ...
- lucene prefixQuery
prefixQuery是lucene的一个前缀匹配的搜索功能,但是它的前缀匹配不是完全的前缀匹配,的query生成是:易* 但是能把所有带有易字的都搜到... 下面是实验:出现了交易...
- python获取DBLP数据集
#!/usr/bin/python # -*- coding: UTF-8 -*- import xml.sax import io, sys paper_tags = ('article', 'in ...
- getpid 与 gettid 与 pthread_self
获取进程的PID(process ID) #include <unistd.h> pid_t getpid(void); 获取线程的TID(thread ID) 1)gettid或者类似g ...
- JAVA定义接口格式:
[public]interface 接口名称 [extends父接口名列表] { //静态常量 [public] [static] [final] 数据类型变量名=常量值; //抽象方法 [publi ...
- iframe跨域访问
js跨域是个讨论很多的话题.iframe跨域访问也被研究的很透了. 一般分两种情况: 一. 是同主域下面,不同子域之间的跨域: 同主域,不同子域跨域,设置相同的document.domian就可以解决 ...
- android笔记:DatePickerDialog日期设置对话框
在开发中,可以通过DatePickerDialog来设置日期,TimePickerDialog来设置时间. 实例化DatePickerDialog对象之后,再调用show方法就可以显示对话框了. 具体 ...
- 爬虫---request+++urllib
网络爬虫(又被称为网页蜘蛛,网络机器人,在FOAF社区中间,更经常的称为网页追逐者),是一种按照一定的规则,自动地抓取万维网信息的程序或者脚本.另外一些不常使用的名字还有蚂蚁.自动索引.模拟程序或者蠕 ...
- 第三十六章 metrics(4)- metrics-graphite
将metrics report给graphite(carbon-relay) 一.代码 1.pom.xml <!-- metrics-graphite --> <dependency ...
- C++中,指针数组和数组指针
这俩兄弟长得实在太像,以至于经常让人混淆.然而细心领会和甄别就会发现它们大有不同. 前者是指针数组,后者是指向数组的指针.更详细地说. 前: 指针数组;是一个元素全为指针的数组. 后: 数组指针;可以 ...
