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
新聞熱點
疑難解答