angularjs过滤器基于特定键(完全匹配)

时间:2016-06-18 10:45:39

标签: angularjs filter

我想过滤一个angularjs数组说,

$scope.myObj = [
       {id:1,name:'foo'},
       {id:2,name:'bar'},
       {id:10,name:'quad'},
       {id:13,name:'cad'}
    ]

特别基于id = 1。如果我使用

console.log($filter('filter')($scope.myObj, 1));

它将返回包含1的所有对象。我如何限制只过滤所需的对象?

编辑:根据以下答案,使用'true表示完全匹配可以解决。

console.log($filter('filter')($scope.myObj, {id: 1}, true));

1 个答案:

答案 0 :(得分:1)

执行以下代码按ID列过滤数据:

var filterObjList=$filter('filter')($scope.myObj, {id:1}, true);
if(filterObjList && filterObjList.length>0)
return filterObjList[0];

如果您想按名称过滤列表,请替换" Id"与"名称"并以单引号传递值。