我有一个JSON数组,想根据匹配条件从其中过滤掉一些元素。
{{myJsonArray | 过滤器:{myKey:myValue}}}
AngularJS中的内联过滤器的问题在于,它不比较所提供键的完整值,而是比较数组中部分值。
我没有看到可以在HTML中使用的任何其他替代内联过滤器的方法。
//My Json Array
$scope.myJsonArray = [
{ id : 1, myKey : "5" },
{ id : 2, myKey : "10" },
{ id : 3, myKey : "15" },
{ id : 4, myKey : "20" }
];
{{ (myJsonArray | filter : { myKey : 1 }).length }}
我除了输出为0之外,因为提供给myKey的值在数组内的任何Json对象中都不存在。
但是实际输出似乎是2。
原因是因为angularjs过滤器将提供的值1与10和15进行比较,并且在这些键中确实存在1时返回true。
我希望过滤器将键作为单个完整值而不是值的一部分进行比较。
相关分类