Предполагая, что каждый item
в items
имеет следующие атрибуты:
Учитывая следующий набор данных:
[
{"id":"Ja111", "sn":"Jacobs","fn":"Jim"},
{"id":"Ja222", "sn":"Jagger","fn":"Robert"},
{"id":"Jo111", "sn":"Jones","fn":"Stan"},
{"id":"J111", "sn":"Johnson","fn":"Alfred"},
{"id":"Sm111", "sn":"Smith","fn":"Joe"}
]
с использованием:
<ui-select-choices repeat="item in items | filter: {id: $select.search, sn: $select.search}">
выполнит операцию «и» над указанными полями (в данном случае id
и sn
) (например, критерий поиска «Джо» найдет только «Стэн Джонс»)
с использованием:
<ui-select-choices repeat="item in items | filter: $select.search">
выполнит операцию «или» во всех полях (например, критерий поиска «Джо» найдет «Стэн Джонс», «Альфред Джонсон» и «Джо Смит»)
с использованием:
<ui-select-choices repeat="item in items | propsFilter: {id: $select.search, sn: $select.search}">
выполнит операцию «или» над указанными полями (в данном случае id
и sn
) (например, критерий поиска «Джо» найдет «Стэн Джонс» и «Альфред Джонсон» — обратите внимание, что он не найдет «Джо Смит», поскольку фильтр не смотрит на поле fn
)
Следующий Plunkr показывает приведенные выше примеры в действии.
Для ваших требований (я предполагаю, что вам нужен фильтр «или», но только для определенных полей), я бы пошел по маршруту propsFilter
. Кажется, это то, что также использует базовая демонстрация ui-select.
person
Ian A
schedule
28.10.2016