1. 过滤filter
过滤就是将内容进行筛选或者转换或者两者都有,一般的表示方式就是在变量后面添加"|",然后加上过滤条件,如——
{{name|currency}}
这个currency过滤器可以将值转变成货币的格式。
另外,这个货币的格式也可以设置——
{{name|currency: "Euro €" }}
这样,输入1234,就会显示:
123,4 Euro €
2. 自定义过滤器
过滤器当然可以自定义,毕竟系统给定的过滤器根本不够用。
<body ng-app="MyApp">
<input type="text" ng-model="text" placeholder="Enter text"/>
<p>Input: {{ text }}</p>
<p>Filtered input: {{ text | reverse }}</p>
</body>
var app = angular.module("MyApp", []); app.filter("reverse", function(input) { var result = "";
input = input || ""; for (var i=0; i<input.length; i++) {
result = input.charAt(i) +"_____>" +result;
alert(result)
}
//巧妙的实现字符串翻转
//笨的方法
//var result = input.split('').reverse().join('') return result; });
如上就是一个自定义的过滤器,简单来说就是编写一个带有参数的函数,将参数输入后,得到一组返回的数据,这个返回数据就是转换后的字符串。
列举一些常用的过滤器:
exclude:排除
<ul ng-init="names = ['Peter', 'Anton', 'John']">
<li ng-repeat="name in names | exclude:'Peter'">
<span>{{name}}</span>
</li>
</ul>