如何使用数组中的多个值过滤 ng-Table。

How to filter ng-Table with multiple values in an array.

我目前正在实施 angular-selectize.js (https://github.com/machineboy2045/angular-selectize) 添加一个搜索框,该搜索框将接受多个值并过滤 ng-[=21= 中的所有单元格] 基于这些值而不指定要过滤的列。类似于使用输入创建搜索框并在 ng-repeat 上执行 filter:search 的结果,但改为使用多个值进行过滤。

笨蛋:http://plnkr.co/edit/701op5FQ0PRJ5FOlF5Mq?p=preview

我创建了一个自定义过滤器并且它起作用了。 笨蛋:http://plnkr.co/edit/701op5FQ0PRJ5FOlF5Mq?p=preview

  .filter('filterSelectize', function($filter){
    return function(cars, multiArray) {
      if(multiArray.length >= 1){
        var filteredCars = cars;
        for(i=0; i < multiArray.length; i++){
          var filteredCars = $filter('filter')(filteredCars, multiArray[i]);
        }
        return filteredCars;
      }
      else {
        return cars;
      }
    }
  })

您也可以使用过滤键 $:

进入 "official" ngTable 方式
function applyGlobalSearch(){
      var term = self.globalSearchTerm;
      if (self.isInvertedSearch){
        term = "!" + term;
      }
      self.tableParams.filter({ $: term });
    }

https://codepen.io/christianacca/pen/doEbJW?editors=1010