关于ng的过滤器的详细解释angular-filter
在使用ng框架做项目的时候,我们可能会使用到ng自带的过滤器,来进行数据的筛选
一:ng自带的过滤器:currency ,date,limitTo,lowercase,uppercase,number,orderBy ,json,filter
过滤器有两种使用方法:第一种,页面是直接使用;第二种,js中使用
以上的过滤器的使用时偏简单的,查看文档对你很有用
这里,我们来讲解一下 上面的简单中的很少用到的json,filter
关于json过滤器的作用是将一个javaScript对象转化为一个JSON字符串:
demo:
<div>
{{ {name: 'Ari', City: 'SanFrancisco'} | json }}
</div>
页面显示的效果是:{ "name": "Ari", "City": "SanFrancisco" }
关于filter过滤器的用法:
页面中直接使用
<div>
{{ ["aaassddd","bbbdddeee","kkklljj"] | filter:"!e" }}
</div>
页面显示的效果是:["aaassddd","kkklljj"]
举一个在js中使用的demo吧
<!doctype html>
<html lang="en" ng-app="myApp">
<head>
<script src="angular.js"></script>
</head>
<body>
<div ng-controller="filterCtrl">
{{name}}
{{dollar}}
{{ ['Ari','Lerner','Likes','To','Eat','Pizza'] | filter:'e' }}
{{ {name: 'Ari', City: 'SanFrancisco'} | json }}
{{ ["aaassddd","bbbdddeee","kkklljj"] | filter:"!e" }}
</div>
</body>
</html>
<script>
angular.module("myApp",[])
.controller("filterCtrl",["$scope","$filter","currencyFilter",function(s,f,c){//方式一:直接使用$filter, 方式二:使用***Filter
s.name=f('lowercase')("ARTDF");
s.dollar=c(234);
}])
</script>
二:讲解了ng的内置过滤器,我们来 学学如何自定义过滤器
ng的自定义过滤器返回的是一个函数,我们可以在这个函数里进行系列操作
js:
var myFilter=angular.module("filterModule",[])
.filter("filter1",function(){
return function(item){
return item+'ABCDE';
}
});
html:
<div>{{432432423432| date:"yyyy-MM-dd"|filter1}}</div>
结果:1983-09-15ABCDE
demo2:自定义过滤器(直接上例子)
<!doctype html>
<html lang="en" ng-app="myApp">
<head>
<script src="lodash.js"></script>
<script src="angular.js"></script>
</head>
<body ng-controller="myCtrl">
<div ng-repeat="t in list | filterByObj:arr">{{t}}</div>
</body>
</html>
<script>
var app=angular
.module("myApp",[])
.controller("myCtrl",function($scope){
$scope.list=[1,3,4,5,12,23,6];
$scope.arr=[6,5,3,1];
})
.filter("filterByObj",[function(){
return function(list,obj){
var result=[];
angular.forEach(list,function(item){
var isEqual=true;
for(var e in obj){
if(item==obj[e]){
result.push(item);
}
}
});
return result;
}
}]);
</script>
结果:1,3,5,6
借鉴资源链接:http://www.oschina.net/translate/angularjs-filter-creating-custom-filter
关于ng的过滤器的详细解释angular-filter的更多相关文章
- Linux - 命令行 管道(Pipelines) 详细解释
命令行 管道(Pipelines) 详细解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/24249529 管道操作符" ...
- ng 自定义过滤器的创建和使用
过滤器的本质就是一个方法,参数就是输入的值以及给过滤器指定的参数,返回值就是处理后要显示的值. ①过滤器创建var app = angular.module();app.filter(‘名称’,fun ...
- Action的三种实现方式,struts.xml配置的详细解释及其简单执行过程(二)
勿以恶小而为之,勿以善小而不为--------------------------刘备 劝诸君,多行善事积福报,莫作恶 上一章简单介绍了Struts2的'两个蝴蝶飞,你好' (一),如果没有看过,请观 ...
- .htaccess语法之RewriteCond与RewriteRule指令格式详细解释
htaccess语法之RewriteCond与RewriteRule指令格式详细解释 (2012-11-09 18:09:08) 转载▼ 标签: htaccess it 分类: 网络 上文htacc ...
- cookie的详细解释
突然看到网页上中英文切换的效果,不明白怎么弄得查了查 查到了cookie 并且附有详细解释 就copy留作 以后温习 http://blog.csdn.net/xidor/article/detail ...
- tar命令的详细解释
tar命令的详细解释 标签: linuxfileoutputbashinputshell 2010-05-04 12:11 235881人阅读 评论(12) 收藏 举报 分类: linux/unix ...
- Linux学习笔记15——GDB 命令详细解释【转】
GDB 命令详细解释 Linux中包含有一个很有用的调试工具--gdb(GNU Debuger),它可以用来调试C和C++程序,功能不亚于Windows下的许多图形界面的调试工具. 和所有常用的调试工 ...
- C语言 - 结构体(struct)比特字段(:) 详细解释
结构体(struct)比特字段(:) 详细解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/26722511 结构体(struc ...
- 姿势体系结构的详细解释 -- C
我基本上总结出以下4部分: 1.问题的足迹大小. 2.字节对齐问题. 3.特别保留位0. 4.这种结构被存储在存储器中的位置. #include <stdio.h> #include &l ...
随机推荐
- iptables详解(6):iptables扩展匹配条件之’–tcp-flags’
如果你看过前文,那么你一定知道,前文已经对"tcp扩展模块"做过总结,但是只总结了tcp扩展模块中的"--sport"与"--dport"选 ...
- js排序算法03——选择排序
选排序的思路是首先从要排序的数组中选择最小的和目前的第一位交换位置,然后从剩下的数中选择最小的和第二个位置的数交换位置,再从剩下的数中选择最小的和第三个位置的数交换位置,以此类推,实现代码如下: fu ...
- Roman Numeral Converter
将给定的数字转换成罗马数字. 所有返回的 罗马数字 都应该是大写形式. 这是一些对你有帮助的资源: Roman Numerals Array.splice() Array.indexOf() Arra ...
- Unicode 和 UTF-8 有何区别? - 引自知乎
作者:于洋链接:http://www.zhihu.com/question/23374078/answer/69732605来源:知乎著作权归作者所有,转载请联系作者获得授权. 很久很久以前,有一群人 ...
- Windbg 调试工具32位/64位版本下载
最新的Windbg调试工具32位/64位版本越来越不好下载了,这里通过CSDN的渠道给大家一个下载地址,帮助大家更好下载工具: https://github.com/EasyDarwin/Tools/ ...
- Android常见问题——Genymotion无法启动问题
在官网下载了Genymotion和VirturalBox的合集安装之后启动模拟器的时候发现启动不了(默认下载,啥都没干),在网上找了一些方法,也没有解决,最后偶然看到一种方法才解决的,先看一下具体的问 ...
- 最新博客开启 - Noogle's Blogs
博客地址: http://noogel.xyz/ 戳我进入 Noogle's Blogs
- postgres访问外网控制
1. sudo apt-get install postgresql #安装psql 2. su passwd postgres #设置postgres账户的密码 3. postgresql.conf ...
- 【Python爬虫学习笔记(2)】正则表达式(re模块)相关知识点总结
1. 正则表达式 正则表达式是可以匹配文本片段的模式. 1.1 通配符 正则表达式能够匹配对于一个的字符串,可以使用特殊字符创建这类模式.(图片来自cnblogs) 1.2 特殊字符的转义 由于在正则 ...
- javascript的slice()与splice()方法
(1)数组和String对象都有slice()方法. //Array var list = ['A','B','C','D','DS']; console.log(list.slice(,));//截 ...