Фильтры AngularJS — как мы можем фильтровать по нескольким объектам

#angularjs #angularjs-filter

#angularjs #angularjs-filter

Вопрос:

Я столкнулся с проблемой при использовании угловых фильтров….

Родительский HTML:

<parent-directive filters="{groupName:'discount'}"></parent-directive>

Содержимое директивы:

<tr ng-repeat="item in collection | filter : $scope.filters"></tr>

Я фильтрую по одному объекту groupName в коллекции, и он работает правильно. Предположим, если мне нужно фильтровать с несколькими объектами (т.е.) groupName , может быть discounts или rewards . Как я могу отправить его в директиву и фильтровать.

Комментарии:

1. Вам нужно объяснить, в чем проблема и чего вы пытаетесь достичь.

Ответ №1:

Некоторый HTML:

 <li ng-repeat="friend in person.friends | myFilter">
   {{ friend }}
</li>
  

Создайте пользовательский фильтр:

 app.filter('myFilter', function () {
  return function (items) {
    var filtered = [];
    for (var i = 0; i < items.length; i  ) {
      var item = items[i];
      if (item == 'some magic you need to do or compare to') {
        filtered.push(item);
      }
    }
    return filtered;
  };
});
  

https://toddmotto.com/everything-about-custom-filters-in-angular-js/