return function (inputData) {
var changed = "";
switch (inputData){
case '101':changed = "老板";break;
case '102':changed = "经理";break;
case '103':changed = "员工";break;
}
return changed;
}
});/*完成,说一下使用场景(就这个过滤器的功能)和方式。* 场景:服务器返回的数据中有个字段code,直接放标签里<div>{{data.code}}</div>,会显示code值而不是code值对应的职称,这时候就可以用这个专门* 针对这个转换的自定义过滤器* 使用方式:* (1)HTML中:<div>{{data.code | ChangeCode}}</div>//跟内置过滤器一样的方式* (2)js中:变量 = $filter("ChangeCode")(被过滤的code数据)//一样的调用方式* * */(2)【带条件】,功能过滤掉一组数组中某个字段值为某个值的数据,比如这里定义一个过滤掉所有年龄为某个值的过滤器。参数就是年龄myApp.filter("deleteByAge",function () {
return function (input,byAge,age) {
var array = [];
for(var i=0;i<input.length;i++){
if(input[i][byAge]!=age){
array.push(input[i]);
}
}
return array;
}
})/** 处理一组数据的时候一般很少用在HTML当中,带条件的自定义过滤器是根据年龄值,也可以根据数组元素中的任意一个属性值进行删除过滤。* 使用方式:变量 = $filter("deleteByAge")(数组,“属性名称”,属性值);* */【总结内置过滤器的使用方式】 (1)在HTML中一般格式为: {{被过滤的数据 | 过滤器名称:条件1:条件2.。。。}} ;过滤条件之间用‘:’隔开. (2)在代码中一般格式为: 变量 = $filter("过滤器名称")(被过滤数据,过滤条件1,过滤条件2,。。。。。。)【自定义过滤器】 (1)定义格式: model.filter(filterName,function(){ return function(参数1,参数2,参数3.。。。。参数N){ //过滤器处理部分 } }) model:模块名称 filterName: 过滤器名称 参数1:被过滤的数据 参数2:一般为过滤条件,可以有多个,后面的参数3一直到参数N都是,根据需要添加。附件中有完整demo
新闻热点
疑难解答