<select ng-model="healthparameters.companyidfilter">
<option></option>
</select>
<select ng-model="parameters.nameidfilter">
<option></option>
</select>
$scope.all_users = [
{
"param0": "value",
"param1": "value",
"param2": "value",
"param3": "value",
"param4": "value",
"param5": "value",
"param6": "value",
"param7": "value",
"param8": "value",
"param9": "value",
"param10": "value",
"param11": "value",
"param12": "value",
"param13": "value",
"param14": "value",
"param15": "value",
"param16": "value",
"param17": "value",
"param18": "value",
"param19": "value",
"param20": "value",
"param21": "value",
"param22": "value",
"param23": "value",
"param24": "value",
"param25": "value",
"param26": "value",
"param27": "value",
"param28": "value",
"param29": "value",
"param30": "value"
},
{
and so on.......
}
]
我需要根据参数(param1,param2,...)过滤数据。现在我编写的代码用于过滤像这样的数据
var filtered;
filtered = $filter('filter')($scope.all_users, {param1 : $scope.parameters.companyidfilter,param2: $scope.parameters.nameidfilter,......})
上面的代码完美地过滤了数据,但问题是:
结果将如下:
param1&amp;&amp; param2所以它执行&#34;和&#34;两个物体之间的操作。
我的问题是我们将如何做&#34;或&#34;两个对象之间的操作并返回所有数据
答案 0 :(得分:1)
根据Angular documentation,您还可以将函数作为过滤器传递,如果值应该包含在内,则可以返回true:
var filtered = $filter('filter')(
$scope.all_users,
function(value, index, array) {
return value.param1 === $scope.parameters.companyidfilter || value.param2 === $scope.parameters.nameidfilter;
}
);