2013-06-06 5 views
9

У меня есть массив объектов, которые являются просто элементами. У меня также есть раскрывающийся список, который я бы хотел использовать, чтобы разрешить пользователю фильтровать по цене или рейтингу, однако при загрузке страницы фильтра не должно быть.фильтровать данные с помощью выпадающего меню?

Как сопоставить данные элемента для фильтрации на основе текущей опции выбора?

У меня есть plunkr начать: LINK

+0

Нажмите «Сохранить» в своем плунге и обновите свой вопрос с помощью нового URL-адреса. Вы отправили сообщение в пустую строку с AngularJS. –

+0

Извините, что plunkr вел себя странно сегодня. Попробуйте сейчас – Malcr001

+0

Подробный блог с примером: http://goo.gl/XYmwkr –

ответ

17

Прежде всего, ваши выбора значений неоднозначны. Они содержат значения, которые могут фильтровать и сортировать записи. Отделите их, поскольку они представляют собой две разные функции.

Затем вам нужно определить настраиваемый фильтр, который будет фильтровать данные на основе выбранного рейтинга. Для этого вы повышаете критерии фильтрации с помощью свойства «Рейтинг», чтобы связать рейтинг, выбранный с помощью рейтингового значения.

Наконец, сопоставьте сортировку с предикатом и обратным значением - предикат определяет свойство/столбец для определения сортировки (цена в вашем случае), в то время как реверс определяет возрастающий/нисходящий характер сортировки.

Весь код можно найти здесь - http://plnkr.co/edit/n7TebC?p=preview

Я обновил plunkr и представил комментарии, так дайте мне знать, если вы не понимаете код.

+0

Спасибо, что помогли. – Malcr001

+0

Это не настраиваемый фильтр, так как Angular использует этот термин, но он работает так. –

Смежные вопросы