【备忘录】过滤已选项
angular.module('myapp').filter('checkRule', function ($filter) {
/**
* inputArray {Array} monitorItems 总的监控项数组
* filter {Array} data.params 已经选中的监控项数组 item值判断
* current {String} rule.item 当前选中的监控项的name
* @return {Array} arr
*/
return function (inputArray, filter, current) {
if (!inputArray) {
return [];
}
var arr = [];
angular.forEach(inputArray, function (input) {
var flag = true;
for (var i = 0; i < filter.length; i++) {
if (filter[i].item == input.name && current != input.name) {
flag = false;
}
};
flag && arr.push(input);
});
return arr;
}
});
选过的监控项,不再在下一个select中显示。
monitorItems : [{"name": "x", ...}, {"name": "y"}]
data.params : [{item: "x", ......}, {item: "y"}]
filter: "x"
浙公网安备 33010602011771号