AngularJS基础学习笔记之指令


Posted in Javascript onMay 10, 2015

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>

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元素。

以上所述就是本文的全部内容了,希望大家能够喜欢。

Javascript 相关文章推荐
JS 页面计时器示例代码
Oct 28 Javascript
JS如何判断移动端访问设备并解析对应CSS
Nov 27 Javascript
js改变Iframe中Src的方法
May 05 Javascript
BootStrap智能表单实战系列(八)表单配置json详解
Jun 13 Javascript
详解JavaScript模块化开发
Dec 04 Javascript
javascript中this关键字详解
Dec 12 Javascript
Node.js学习入门
Jan 03 Javascript
JavaScript无缝滚动效果的实例代码
Mar 27 Javascript
使用JavaScript实现点击循环切换图片效果
Sep 03 Javascript
微信小程序实现图片上传放大预览删除代码
Jun 28 Javascript
React Component存在的几种形式详解
Nov 06 Javascript
微信小程序对图片进行canvas压缩的方法示例详解
Nov 12 Javascript
AngularJS基础学习笔记之表达式
May 10 #Javascript
AngularJS基础学习笔记之简单介绍
May 10 #Javascript
JS实现仿QQ聊天窗口抖动特效
May 10 #Javascript
javascript为按钮注册回车事件(设置默认按钮)的方法
May 09 #Javascript
深入浅出分析javaScript中this用法
May 09 #Javascript
深入浅出理解javaScript原型链
May 09 #Javascript
js实现从右向左缓缓浮出网页浮动层广告的方法
May 09 #Javascript
You might like
提升PHP执行速度全攻略(下)
2006/10/09 PHP
PHP 常见郁闷问题答解
2006/11/25 PHP
php5.3 废弃函数小结
2010/05/16 PHP
PHP图片裁剪函数(保持图像不变形)
2014/05/04 PHP
PHP基于数组实现的分页函数实例
2014/08/20 PHP
PHP实现简易blog的制作
2016/10/24 PHP
thinkphp5.1框架模板布局与模板继承用法分析
2019/07/19 PHP
laravel 查询数据库获取结果实现判断是否为空
2019/10/24 PHP
javascript 触发HTML元素绑定的函数
2010/09/11 Javascript
Javascript 异步加载详解(浏览器在javascript的加载方式)
2012/05/20 Javascript
JavaScript中的object转换函数toString()与valueOf()介绍
2014/12/31 Javascript
jquery分析文本里url或邮件地址为真实链接的方法
2015/06/20 Javascript
详细分析JavaScript变量类型
2015/07/08 Javascript
jQuery中extend函数详解
2015/07/13 Javascript
第一章之初识Bootstrap
2016/04/25 Javascript
Node.js实现文件上传的示例
2017/06/28 Javascript
AngularJS实现页面跳转后自动弹出对话框实例代码
2017/08/02 Javascript
jQuery实现表单动态添加数据并提交的方法
2018/07/19 jQuery
小程序兼容安卓和IOS数据处理问题及坑
2018/09/18 Javascript
javascript实现弹出层效果
2019/12/10 Javascript
使用typescript改造koa开发框架的实现
2020/02/04 Javascript
prettier自动格式化去换行的实现代码
2020/08/25 Javascript
Python3基础之条件与循环控制实例解析
2014/08/13 Python
Python基于回溯法子集树模板解决全排列问题示例
2017/09/07 Python
利用numpy实现一、二维数组的拼接简单代码示例
2017/12/15 Python
使用python将请求的requests headers参数格式化方法
2019/01/02 Python
Django 项目通过加载不同env文件来区分不同环境
2020/02/17 Python
python读取多层嵌套文件夹中的文件实例
2020/02/27 Python
使用python接受tgam的脑波数据实例
2020/04/09 Python
美国汽配连锁巨头Pep Boys官网:轮胎更换、汽车维修服务和汽车零部件
2017/01/14 全球购物
草莓网化妆品澳大利亚站:Strawberrynet AU
2017/12/18 全球购物
巧克力蛋糕店创业计划书
2014/01/14 职场文书
市场营销方案范文
2014/03/11 职场文书
小学生毕业评语
2014/12/26 职场文书
能让Python提速超40倍的神器Cython详解
2021/06/24 Python
六个好看实用的 HTML + CSS 后台登录入口页面
2022/04/28 HTML / CSS