Javascript 如何筛选控制器上的多个数据

Javascript 如何筛选控制器上的多个数据,javascript,angularjs,Javascript,Angularjs,我正在这样做,它正在发挥作用 $scope.data = $filter('filter')($scope.data, {dataType: term ,status : 'F'}); 但我必须用两种状态过滤数据 $scope.data = $filter('filter')($scope.data, {dataType: term ,status : 'F' ,status:'E'}); 但它只接受其中一种状态。(F或E) 请建议 我想根据术语和状态F和E进行过滤首先,你写的是错误的。您

我正在这样做,它正在发挥作用

$scope.data = $filter('filter')($scope.data, {dataType: term ,status : 'F'});
但我必须用两种状态过滤数据

 $scope.data = $filter('filter')($scope.data, {dataType: term ,status : 'F' ,status:'E'});
但它只接受其中一种状态。(F或E)

请建议


我想根据术语和状态F和E进行过滤首先,你写的是错误的。您基本上是在传递具有重复关键点的对象。在严格模式下,这将不起作用。在非严格模式下,它将采用最后一个值,在您的情况下为E

现在,来看看解决方案。。。 我认为您希望筛选状态为F或E的数据。 您可以编写一个自定义筛选器,以任意方式筛选数据。。。类似下面的例子

angular.module('yourAppName').filter('myFilter', function() {
 return function(input, criteria) {
       // your filter logic
 };
});
您可以通过传递要筛选的值数组来调用筛选器

$scope.data = $filter('myFilter')($scope.data, {status : ["A", "B"]});
如何实现完全取决于您(可能您将使用下划线),但您得到了总体思路。。。要了解有关过滤器的更多信息,请查看