AangularJS过滤器详解
(参考angular权威指南)
过滤器: 用来格式化需要展示给用户的数据;
使用过滤器的方式:
(1)$scope.name=$filter("lowercase").("Ariarme");
(2)以HTML形式使用过滤器:如果传递参数只要在过滤器名字后面加冒号,有多个参数,可以在每个参数后面都加入冒号;
{{123.456789 | number:2}} 限制小数点的位数-----显示为123.46(四舍五入)
(3)用 | 符号作为分隔符来同时使用多个过滤器;
AngularJS提供的内置过滤器:
currency : 将一个数值格式化为货币格式,用{{123 | currency}} 将123转化成货币格式;
它允许我们自己设置货币符号:如 {{123 | currency : "¥"}} 显示为¥123.00.00;
date: 可以将日期格式化成需要的格式;
内置的支持本地化的日期格式:
{{today | date 'medium'}} Aug 09,2014 9:45:08 AM
{{today | date 'short'}} 8/9/14 9:45AM
{{today | date 'fullDate'}} Thursday,August 09,2014
{{today | date 'longDate'}} August 09,2014
{{today | date 'mediumDate'}} Aug 09,2014
{{today | date 'shorDate'}} 8/9/14
{{today | date 'mediumTime'}} 9:45:08 AM
{{today | date 'shortTime'}} 9:45 AM;
年份格式化:
四位年份:{{today | date 'yyyy’}} 2017
两位年份:{{today | date 'yy‘}} 17
一位年份:{{today | date 'y‘}} 2017
月份格式化:
英文月份:{{taday |date:'MMMM'}} August
英文月份j简写 {{taday |date:'MMM'}} Aug
数字月份:{{taday |date:'MM'}} 08
一个月中第几个月份::{{taday |date:'M'}} 8
日期格式化:
数字日期:{{today | date:'dd'}} 22
一个月中的第几天:{{today | date:'d'}} 22
英文星期: {{today | date:'EEEE'}} Thrusday
英文星期简写:{{today | date:'EEE'}}Thu
小时格式化:
24小时制数字小时:{{today | date:'HH'}} 00
一天中的第几个小时:{{today | date: 'H'}} 0
12小时制数字小时:{{today | date:'hh'}} 12
上午或下午的第几个小时::{{today | date:'h'}} 12
分钟格式化:
数字分钟数:{{today | date : 'mm'}} 05
一个小时的第几分钟:{{today | date : 'm'}} 5
秒数格式化:
数字秒数:{{today | date 'ss'}} 09
一分钟内的第几秒:{{today | date 's'}} 9
毫秒数:{{today | date 'sss'}}
字符格式化:
上下午标示:{{today | date: 'a'}} AM
四位时区标示:{{today | date 'Z'}} 0700
自定义日期格式:
{{today | date:'hh:mm:ss'}} 23:15:40
{{today | date:'yyyy-MM-dd hh:mm:ss'}} 2017 -5-22 23:15:40
filter: 可以从给定数组中选择一个子集,并将其生成一个新数组返回;通常过滤需要进行展示的元素;
参数:第一个参数可以是 字符串、对象、或是一个用来从数字中选择元素的函数;
第二个参数用来指定预期同实际值进行比较的方式;
参数设置为true: 表示用angular.equals(expected,actual)对两个值进行严格比较;
参数设置为false:进行区分大小写的子字符串比较;
参数设置为函数:运行这个函数,如果返回真值就接受这个元素;
json: 可以将一个JSON或JavaScript对象转化成字符串;
limitTo: 过滤器根据传入的参数生成一个新的数组或字符串,新的数组或字符串的长度取决于传入的参数,通过传入的参数的正负来控制从前面还是从后面开始截取;
lowercase: 过滤器将字符串转化为小写;
uppercase: 过滤器将字符串转化为大写;
number: 将数字格式化成文本,第二个参数可选,用来控制截取小数点的位数,如果传入的是非数字字符,会返回空字符串;
{{123456789 | number}} 1,234,567,890
{{1.23456789 | number:2}} 1.23
orderBy:过滤器可以用表达式对指定的数组进行排序,它接受两个参数,第一个是必须的,第二个是可选的,控制排序的方向,第二个参数设置为true,排序反转;
例如:{{--- | orderBy:'name':true}}
使用+是升序,-是降序;orderBy:'- age';按年龄的降序排列;
自定义过滤器:
自定义过滤器创建是非常容易的,本质上市会把我们输入的内容当作参数传入进去的函数;
列子: angular.module('mainApp',[]).filter('capitlize',function(){
return function(input){
if(input){
return input[0].toUpperCase() + input.slice(1);
}
}
}); //将字符串的一个字母转化为大写的过滤器
AangularJS过滤器详解的更多相关文章
- MVC过滤器详解
MVC过滤器详解 APS.NET MVC中(以下简称"MVC")的每一个请求,都会分配给相应的控制器和对应的行为方法去处理,而在这些处理的前前后后如果想再加一些额外的逻辑处理. ...
- Asp.Net MVC学习总结之过滤器详解(转载)
来源:http://www.php.cn/csharp-article-359736.html 一.过滤器简介 1.1.理解什么是过滤器 1.过滤器(Filters)就是向请求处理管道中注入额外的 ...
- Wireshark过滤器详解
Wireshark过滤器详解 1.Wireshark主要提供两种主要的过滤器 捕获过滤器:当进行数据包捕获时,只有那些满足给定的包含/排除表达式的数据包会被捕获 显示过滤器:该过滤器根据指定的表达式用 ...
- angular-ngSanitize模块-linky过滤器详解
本篇主要讲解angular中的linky这个过滤器.此过滤器依赖于ngSanitize模块. linky能找出文本中的链接,然后把它转换成html链接.什么意思,就是说,一段文本里有一个链接,但是这个 ...
- shell sed过滤器详解
1. Sed简介sed 是一种在线编辑器,它一次处理一行内容.处理时,把当前处理的行存储在临时缓冲区中,称为"模式空间"(pattern space),接着用sed命令处理缓冲区中 ...
- Java 中的 Filter 过滤器详解
Filter简介 Filter也称之为过滤器,它是Servlet技术中最实用的技术,WEB开发人员通过Filter技术,对web服务器管理的所有web资源:例如Jsp, Servlet, 静态图片文件 ...
- MVC过滤器详解 面向切面编程(AOP)
面向切面编程:Aspect Oriented Programming(AOP),面向切面编程,是一个比较热门的话题.AOP主要实现的目的是针对业务处理过程中的切面进行提取,它所面对的是处理过程中的某个 ...
- AngularJS开发指南13:AngularJS的过滤器详解
AngularJS过滤器是用来格式化输出数据的.除了格式化数据,过滤器还能修改DOM.这使得过滤器通常用来做些如“适时的给输出加入CSS样式”等工作. 比如,你可能有些数据在输出之前需要根据进行本地化 ...
- ASP.NET MVC 过滤器详解
http://www.fwqtg.net/asp-net-mvc-%E8%BF%87%E6%BB%A4%E5%99%A8%E8%AF%A6%E8%A7%A3.html 我经历了过滤器的苦难,我想到了还 ...
随机推荐
- translclude
.transclude:true 启用transclude,启用以后,有两个地方会发生变化: ①.使用指令的元素内部的所有内容都会被保存起来.不妨先把这一段内容称为一坨. 比如指令元素是这样的: &l ...
- 1005 继续(3n+1)猜想
卡拉兹(Callatz)猜想已经在1001中给出了描述.在这个题目里,情况稍微有些复杂. 当我们验证卡拉兹猜想的时候,为了避免重复计算,可以记录下递推过程中遇到的每一个数.例如对 n=3 进行验证的时 ...
- SQLServer查询当前数据库所有索引及统计,并使用游标批量删除
--查询现有所有数据库表的索引情况 Select indexs.Tab_Name As [表名],indexs.Index_Name As [索引名] ,indexs.[Co_Names] As [索 ...
- <顺序访问><随机访问><HDFS>
Overview 如果你了解过HDFS,至少看过这句话吧: HDFS is a filesystem designed for storing very large files with stream ...
- shell脚本实例-实现监控tcp的链接状态另一种方式批量创建用户
Array实现TCP的链接状态 #!/usr/bin/bash declare -A status type=`ss -an | grep :80|awk '{print $2}'` for i in ...
- 分析无线遥控器信号并制作Hack硬件进行攻击
无线遥控器(无线电遥控器)在我们生活中非常常见,应用于各种场景,方便着用户的使用.不过大多数还是用于安防方面的,比如: 遥控报警器.电动卷帘门.电动伸缩门.遥控电开关.无线遥控门铃…… 1.无线遥控器 ...
- HTTP、TCP、IP、协议
HTTP(HyperText Transfer Protocol) 即超文本传输协议,现在基本上所有web项目都遵从HTTP协议(协议就是一种人为的规范). 目前绝大部分使用的都是HTTP/1.1版本 ...
- Maven Speed Up
收录架构 proxy代理仓库 不支持仓库搜索功能 收录版本 所有版本 更新时间 每24小时更新一次 使用说明 一.在maven软件中使用 以Maven 3.5.2为例: 打开maven配置文件 ./a ...
- array_reverse()函数
$a=array(1,2,4,5,6); print_r(array_reverse($a)); 结果:Array ( [0] => 6 ...
- Python 关联关系
class Boy: def __init__(self, name, girlFriend=None): # 在初始化的时候可以给一个对象的属性设置成另一个类的对象 self.girlFriend ...