Угловой фильтр точного соответствия

0

Хорошо, поэтому я не был уверен, что назвать этот вопрос.

Но у меня есть следующий ng-repeat:

ng-repeat="module in modules |filter:{ module_type_id: selectedItem.id } |filter:search:strict"

Это повторяется через объекты, которые выглядят так:

{id: 1, name: 'Hello', module_type_id: 5}

Теперь у меня есть 12 типов модулей, поэтому любой из этих объектов имеет module_type_id между 1 и 12.

Когда я нажимаю одну из категорий, тем самым выбирая тип, для переменной selectedItem установлено это значение. (который затем сортирует список)

Это работает, однако есть странная ошибка.

если я выбираю категорию с идентификатором 1 то элементы с id 1, 10, 11,12

я предполагаю, что фильтр принимает часть значения и поэтому показывает только результаты, содержащие это значение. и поскольку 1,10,11,12 все содержат значение 1 то эти результаты показаны.

Итак, как я могу убедиться, что он показывает только результат, который точно соответствует значению?

Теги:
angular-filters

1 ответ

6
Лучший ответ

Фильтр принимает другой параметр, который делает его строгим, вы используете его для своей второй части...

ng-repeat="module in modules |filter:{ module_type_id: selectedItem.id } : true |filter:search:strict"
  • 0
    Но как вы должны исправить отрицание, чтобы быть строгим? «! 2» будет отрицать 2, 22, 222, 202, 201 и т. Д. Установка его в строгом сводит на нет все записи.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню