假设我有一个类似的数组:
array = [{
title: "foo1",
content: "bar1"
},{
title: "foo2",
content: "bar2"
},{
title: "foo3",
content: "bar3"
}];
现在我想过滤这个数组,使其标题包含的对象成为像'3'这样的字符。 所以现在我的过滤数组应该是
filteredArray = [{
title:"foo3",
content: "bar3"
}];
我试过
filteredArray = $filter('filter')(array, {
title: "foo3"
});
但问题是标题需要完全是“foo3”。如果我把“3”它不会过滤,因为它不会检查它是否包含它,它会查找完全匹配。
任何想法如何实现这一目标?
答案 0 :(得分:5)
过滤器过滤器(是的,我知道)包含过滤...
我将您的代码(工作)粘贴到PLNKR并在3
上过滤,然后取回标题:' foo3'元件
array = [{
title: "foo1",
content: "bar1"
},{
title: "foo2",
content: "bar2"
},{
title: "foo3",
content: "bar3"
}];
$scope.filteredData = $filter('filter')(array, {
title: "3",
});
答案 1 :(得分:1)
您需要编写自己的过滤器。请查看此answer,了解如何实现您的目标。