Как я могу использовать фильтр для всех полей в ng-таблице

Привет, я изучаю AngularJs и использую ng-table, но не знаю, как сделать множественный фильтр в одном поле.

Я знаю, как сделать один фильтр и сортировку, я искал и читал, но не нашел ничего подходящего для меня, думаю, есть способ.

Спасибо и извините за мой английский.

РЕДАКТИРОВАТЬ: это мой код

$scope.init = function () { $http.post(slim + 'grupos2', $.extend({}, false, window.seguridad)).then(function(response) { $scope.grupos = response;< br> var data2 = $scope.grupos.data;

            $scope.tableParams = new ngTableParams({
                page: 1,          
                count: 10,        
                filter: {

                },
                 sorting: {
                nombre: 'asc'     
                    }
            }, {
            total: data2.length, 
            getData: function($defer, params) { 

             var orderedData = params.filter() ?
                 $filter('filter')(data2, params.filter()) :
                 data2;


             orderedData = params.sorting() ?
                 $filter('orderBy')(orderedData, params.orderBy()) :
                 orderedData;

                $scope.grupete = orderedData.slice((params.page() - 1) * params.count(), params.page() * params.count()); 
                params.total(orderedData.length); 
                $defer.resolve($scope.grupete); 
        }
    });
});

а также

            <tr ng-repeat="grupo in grupete">
                <td data-title="'Num'" sortable="'idGrupo'">{{grupo.idGrupo}}</td>
                <td data-title="'Name'" sortable="'name'" filter="{ 'name': 'text' }" >{{grupo.nombre}}</td>
                <td data-title="'Aforo'" sortable="'aforo'" >{{grupo.aforo}}</td>
                <td data-title="'Fecha'" sortable="'fecha'" >{{grupo.fecha.toString()}}</td>

            </tr>
        </table>   

I want there to be a filter that searches multiple fields like name.

filter="{ 'имя': 'текст' }"


person evilfistro    schedule 25.08.2015    source источник
comment
Можете ли вы опубликовать какой-либо код того, что вы пробовали до сих пор?   -  person Stafford Williams    schedule 25.08.2015
comment
Вы можете связать несколько фильтров в своем представлении, используя оператор канала. Это в основном дает выход одного фильтра как вход следующего фильтра. <tr ng-repeat="grupo in grupete | filter:params.filter | orderBy:params.orderBy()">   -  person cubbuk    schedule 26.08.2015
comment
простите, не понимаю, что вы ответили мне куббук, то, как вы мне говорите, это фильтровать и упорядочивать поля, как в коде, который у меня есть, но у меня все еще тот же вопрос, что и у меня, что поле является фильтром для нескольких полей доска, я думаю, что вопрос новичка, но я хочу научиться делать это.   -  person evilfistro    schedule 26.08.2015
comment
идея состоит в том, чтобы использовать один из фильтров, который приносит ng -table и заставить его искать во всех полях, пытались сделать фильтр с фильтром, но не работают, а также не обновляли данные для каждой страницы в ng -table   -  person evilfistro    schedule 31.08.2015


Ответы (1)


Точное поведение, которое вы ищете, достигается с помощью атрибута объекта фильтра '$'. Как это:

  $scope.tableParams = new ngTableParams({
    // ...       
    filter: {
      $: 'filter string'
    },
  }, {
    // ...
  });
person gztomas    schedule 10.03.2016