У меня есть массив людей, которых я должен фильтровать и упорядочивать по двум критериям. Мой фильтр прост в том, что если имя содержит то, что они набирают, пропустите его. Для группировки я хочу сначала сгруппировать всех людей с clockedIn = 1, а затем в этих двух группах я хочу заказать по фамилии.
Мой фильтр работает отлично, но я не могу заставить orderBy работать вообще независимо от того, что я делаю...
Полный jsfiddle: http://jsfiddle.net/joshuaohana/82k76uj0/1/, показывает все вспомогательные функции и многое другое
Повтор, который я пытаюсь настроить:
<div ng-repeat="person in people | filter:nameFilterFn | orderBy: '+person.clockedIn' | orderBy:'-person.userLastName' ">
<p>{{person.userName}}</p>
<p>{{person.clockedIn}}</p>
</div>
Для ng-repeat, как я...
Для сортировки по нескольким полям используйте этот синтаксис:
<div ng-repeat="person in people | filter:nameFilterFn | orderBy: ['clockedIn', 'userLastName'] ">
Чтобы использовать обратное lastName
используйте ['clockedIn', '-userLastName']
Обновленная скрипка здесь