AngularJS的Filter用法详解
Filter简介Filter是用来格式化数据用的。 Filter的基本原型( '|' 类似于Linux中的管道模式): {{ expression | filter }} Filter可以被链式使用(即连续使用多个filter): {{ expression | filter1 | filter2 | ... }} Filter也可以指定多个参数: {{ expression | filter:argument1:argument2:... }}
AngularJS内建的FilterAngularJS内建了一些常用的Filter,我们一一来看一下。 currencyFilter(currency): 用途:格式化货币 方法原型: function(amount,currencySymbol,fractionSize) 用法: 1 {{ 12 | currency}} <!--将12格式化为货币,默认单位符号为 '$',小数默认2位--> 2 3 {{ 12.45 | currency:'¥'}} 将12.45格式化为货币,使用自定义单位符号为 '¥',128)">4 5 {{ 12.45 | currency:'CHY¥':1}} 将12.45格式化为货币,使用自定义单位符号为 'CHY¥',小数指定1位,会执行四舍五入操作 6 7 {{ 12.55 | currency:undefined:0}} 将12.55格式化为货币, 不改变单位符号, 小数部分将四舍五入 -->
dateFilter(date): 用途:格式化日期
function(date,format,timezone) 使用ISO标准日期格式 --> {{ '2015-05-20T03:56:16.887Z' | date:"MM/dd/yyyy @ h:mma"}} 使用13位(单位:毫秒)时间戳 --> {{ 1432075948123 | date:"MM/dd/yyyy @ h:mma"}} 指定timezone为UTC --> {{ 1432075948123 | date:"MM/dd/yyyy @ h:mma":"UTC"}} 用法1(参数expression使用String): 1 <div ng-init="myArr = [{name:'Tom',age:20},{name:'Tom Senior',age:50},{name:'May',age:21},{name:'Jack',{name:'Alice',age:22}]">
2 参数expression使用String,将全文搜索关键字 'a' 3 ng-repeat="u in myArr | filter:'a' "4 p>Name:{{u.name}}</5 >Age:{{u.age}}6 br />
7 div8 > 完整的示例代码: <!DOCTYPE 2 htmlheadscript src="/Scripts/angular.js"></scripttype="text/javascript" 6 (function () {
7 var app = angular.module('ngCustomFilterTest,[]);
8
9 app.filter(capitalize_as_you_want10 return (input,specified_char) {
11 input input || '';
12 output = 13
14 customCapIndex capitalize_index -115
16 specifiedChar specified_char 17
18 for ( i 0; i < input.length; i++) {
19 // 首字母肯定是大写的, 指定的index的字母也大写
20 if (i === 0 ||=== customCapIndex) {
21 output += input[i].toUpperCase();
22 }
23 else {
24 指定的字母也大写
25 (specified_char != '' && input[i] specified_char) {
26 output 27 }
28 29 input[i];
30 31 32 }
33
34 return output;
35 };
36 });
37
38 })();
39 40 41 body ng-app="ngCustomFilterTest"42 ="yourinput" type="text"43 44 Result: {{ yourinput | capitalize_as_you_want:3:'b' }}
45 body46 好了,本篇讲了AngularJS中的Filter,看完这篇后,我们可以利用好Filter非常方便的使数据能按我们的要求进行展示,从而使页面变得更生动。
文章出处 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |