Angularjs学习笔记(五)----显示和格式化数据
一、引用指令
在AngularJS的文档中,所有指令的名字以驼峰命名法。而在模板中,则需要以蛇形命名法。可以以冒号分割(ng:model)或下划线分割(ng_model),更常见的是以ng-model这种样式命名。如果是HTML5,前面可以加上data,如data-ng-model。
二、插值指令
用花括号界定的表达式,如:
<span>{{expression}}</span>
插值指令会对模型中的任意HTML内容进行转义,这是为了防止注入攻击。例如:
$scope.msg='Hello,<b>World</b>!';
<p>{{msg}}</p>
渲染后会对模型中的任意HTML内容进行转义,最后结果为:
<p>Hello,<b>World</b>!</p>
如果因为某些理由,包含HTML标记的模型要被浏览器求值和渲染,那么可以用ng-bind-html-unsafe指令来默认关掉默认的HTML标签转义:
<p ng-bind-html-unsafe="msg"></p>
AngularJS还有一个指令----ng-bind-html,它能选择性的净化指定的HTML标签,同时允许其他标签被浏览器解释。他的用法如下:
<p ng-bind-html="msg"></p>
需要引用额外的源文件:angular-sanitize.js,还需要声明ngSanitize模块依赖。
三、条件化显示
四套指令集:ng-show/ng-hide,ng-switch-*,ng-if,ng-include
3.1 ng-show/ng-hide指令通过简单的应用style="display:none"来隐藏DOM元素,这些元素并不从DOM树种移除。
3.2 ng-switch和ng-if可以增加、移除DOM元素,ng-if使用更简单一点。
3.3 ng-include可以根据表达式的求值结果,有条件的加载和显示子模板。如:
<div ng-include="user.admin&&'edit.admin.html'||'edit.user.html'"></div>
这句话的意思是,如果user.admin为true,则返回的结果为edit.admin.html,第二个表达式edit.user.html就不会执行。最后的返回结果为edit.admin.html。如果user.admin为false,则第二句话就不会执行,则第一句和第二句整个就是false,返回结果就为第三句话,返回edit.user.html.
tips:&&第一个表达式为假就不会处理第二个表达式,||相反。
四、ngRepeat指令
<table class="table">
<tr ng-repeat="user in users">
<td>{{user.name}}</td>
<td>{{user.email}}</td>
</tr>
</table>
4.1 特殊变量
AngularJS重复器在为每个独立条目创建作用域时,都会申明一组特殊变量,他们可用于确定此元素在集合中的位置。
$index:指代元素在集合中的索引数字(从0开始)。
$first、$middle、$last:这些变量会根据元素的位置获得对应的布尔值。
Angularjs学习笔记(五)----显示和格式化数据的更多相关文章
- python3.4学习笔记(五) IDLE显示行号问题,插件安装和其他开发工具介绍
python3.4学习笔记(五) IDLE显示行号问题,插件安装和其他开发工具介绍 IDLE默认不能显示行号,使用ALT+G 跳到对应行号,在右下角有显示光标所在行.列.pycharm免费社区版.Su ...
- 【opencv学习笔记五】一个简单程序:图像读取与显示
今天我们来学习一个最简单的程序,即从文件读取图像并且创建窗口显示该图像. 目录 [imread]图像读取 [namedWindow]创建window窗口 [imshow]图像显示 [imwrite]图 ...
- AngularJs学习笔记--concepts(概念)
原版地址:http://code.angularjs.org/1.0.2/docs/guide/concepts 继续.. 一.总括 本文主要是angular组件(components)的概览,并说明 ...
- AngularJs学习笔记--Forms
原版地址:http://code.angularjs.org/1.0.2/docs/guide/forms 控件(input.select.textarea)是用户输入数据的一种方式.Form(表单) ...
- AngularJs学习笔记--expression
原版地址:http://code.angularjs.org/1.0.2/docs/guide/expression 表达式(Expressions)是类Javascript的代码片段,通常放置在绑定 ...
- AngularJs学习笔记--directive
原版地址:http://code.angularjs.org/1.0.2/docs/guide/directive Directive是教HTML玩一些新把戏的途径.在DOM编译期间,directiv ...
- AngularJs学习笔记--Using $location
原版地址:http://code.angularjs.org/1.0.2/docs/guide/dev_guide.services.$location 一.What does it do? $loc ...
- AngularJs学习笔记--Scope
原版地址:http://code.angularjs.org/1.0.2/docs/guide/scope 一.什么是Scope? scope(http://code.angularjs.org/1. ...
- AngularJs学习笔记--bootstrap
AngularJs学习笔记系列第一篇,希望我可以坚持写下去.本文内容主要来自 http://docs.angularjs.org/guide/ 文档的内容,但也加入些许自己的理解与尝试结果. 一.总括 ...
- AngularJs学习笔记--html compiler
原文再续,书接上回...依旧参考http://code.angularjs.org/1.0.2/docs/guide/compiler 一.总括 Angular的HTML compiler允许开发者自 ...
随机推荐
- 解决 umount 时出现的 "Device is busy"
1.umount, 老是提示:device is busy, 服务又不能停止的. 可以用"umount -fl"解决! 2.mount的基本用法是? 格式:mount [-参数] ...
- 一键配置openvpn
页面:https://github.com/Nyr/openvpn-install openvpn-install OpenVPN road warrior installer for Debian, ...
- 查看regulator的信息
例如,查看ldo6 /sys/devices/soc.0/qcom,rpm-smd.35/rpm-regulator-ldoa6.85/regulator-l6.110/regulator/regul ...
- 获取Finacial dimension value的description 值
public static Description findDimensionValueDescription(DimensionValue _dimensionValue, Name _dimens ...
- php删除目录下的所有文件和目录
<?php /** * 递归实现删除目录下的所有的文件和文件夹 * @param $dir 要删除的目录 * @param bool $deleteRootToo 是否删除根目录 默认不删除 h ...
- 在 Hibernate 中出现 database product name cannot be null 时怎么解决?
今 天在做一个SH项目结合的时候忽然出现了,这样的错误,我开始也不知道怎么办,便上网查,看一些高手回答都是说,检查 hibernate.cfg.xml 这个配置文件,或是一些其它的配置,于是我便看了一 ...
- mapreduce核心原理
1:第一阶段: 第一阶段的task每一个nodemanager并发运行程序,完全并发,各不影响.这就是map阶段 运行的task时maptask 2:第二个阶段的task并发实例互不相干,但是他们的数 ...
- 《从零开始做一个MEAN全栈项目》(2)
欢迎关注本人的微信公众号"前端小填填",专注前端技术的基础和项目开发的学习. 上一节简单介绍了什么是MEAN全栈项目,这一节将简要介绍三个内容:(1)一个通用的MEAN项目的技 ...
- jsp+tomcat+mysql+sevlet+javabean配置过程
在配置jsp开发环境的过程中会碰到不少问题,感谢网上的许多前辈的经验总结,作者cl41的JSP连接Mysql数据库攻略和作者Saulzy的MySQL学习笔记等文章对我来说简直是雪中送碳,为了帮助象我一 ...
- Spark Streaming源码解读之No Receivers彻底思考
本期内容 : Direct Acess Kafka Spark Streaming接收数据现在支持的两种方式: 01. Receiver的方式来接收数据,及输入数据的控制 02. No Receive ...