AngularJS: OrderBy Descending (пустые записи)

Я использую Angular JS и Google Places API для создания веб-приложения.

У меня есть ng-repeat, который в настоящее время упорядочивается по убыванию "rating" (orderBy: '- rating'). Таким образом, он будет перечислять x мест из файла JSON API Google Адресов в порядке убывания на основе рейтинга.

ОДНАКО, предметы / места, которые не имеют рейтинга, классифицируются как нулевые, и эти записи отображаются в верхней части моего канала ng-repeat. Они должны идти в нижней части канала, поскольку у них нет рейтинга?

Вот пример того, как я хотел бы, чтобы это выглядело так:

<ng-repeat orderBy:'-rating'>
  <place rating="5"/>
  <place rating="4.2"/>
  <place rating="2.8"/>
  <place rating="null"/>
  <place rating="null"/>
</ng-repeat>

Какой лучший способ сделать это?

1 ответ

Решение

Сортировать с null или же undefined значение с использованием orderBy фильтр. использование [] обозначение orderBy:[ '!rating', '-rating', ],

Что покажет null или же undefined значение внизу.

лайк:

 <li ng-repeat="option in options | orderBy:[ '!rating', '-rating', ]">{{option.name}}</li>
Другие вопросы по тегам