我有这个过滤器,我有错误过滤[i] .splice不是函数
.filter('tsFilter', function() {
return function(model, filter) {
var filtered = [];
if (model != null) {
for (var i = 0; i < model.length; i++) {
filtered[i] = model[i];
}
}
for (i = 0; i < filtered.length; i++) {
if (filtered[i].List.length == 0)
filtered[i].splice(i, 1);
}
return filtered;
};
})
为什么我有这个错误?怎么解决?
答案 0 :(得分:1)
看起来你想要使用:
for (i = 0; i < filtered.length; i++) {
if (filtered[i].List.length == 0)
filtered.splice(i, 1);
}
虽然从迭代中删除数组中的元素不是一个好主意。
答案 1 :(得分:1)
您需要更新
for (i = 0; i < filtered.length; i++) {
if (filtered[i].List.length == 0)
filtered.splice(i, 1); //updated
}
希望这会帮助你。