Spec-Zone.ru › Angular.js 1.3

Улучшить эту документацию Просмотреть исходный код orderBy

  1. фильтр в модуле ng

Сортирует указанный array по заданному expression предикату. Сортировка выполняется по алфавиту для строк и по числовому значению для чисел. Примечание: если вы заметили, что числа сортируются некорректно, убедитесь, что они действительно сохраняются как числа, а не как строки.

Использование

В привязке шаблона HTML

{{ orderBy_expression | orderBy : expression : reverse}}

В JavaScript

$filter('orderBy')(array, expression, reverse)

Аргументы

Параметр Тип Подробности
массив Array

Сортируемый массив.

выражение function(*)stringArray.<(function(*)|string)>=

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

Может быть одним из следующих:

  • function: Функция-получатель. Результат выполнения этой функции будет отсортирован с использованием <, ===, > оператора.
  • string: Выражение Angular. Результат этого выражения используется для сравнения элементов (например, name для сортировки по свойству с именем name или name.substr(0, 3) для сортировки по первым 3 символам свойства с именем name). Результат константного выражения интерпретируется как имя свойства, используемого в сравнениях (например, "special name" для сортировки объектов по значению их свойства special name). Выражение можно необязательно префиксровать с + или - для управления порядком сортировки (например, +name или -name). Если свойство не указано (например, '+'), то для сравнения используются сами элементы массива.
  • Array: Массив функций или строковых предикатов. Первый предикат в массиве используется для сортировки, но когда два элемента эквивалентны, используется следующий предикат.

    Если предикат отсутствует или пуст, по умолчанию используется '+'.

reverse
(необязательно)
boolean

Обратить порядок элементов массива.

Возвращаемое значение

Array

Отсортированная копия исходного массива.

Пример ниже демонстрирует простой ngRepeat, где данные сортируются по возрасту в порядке убывания (предикат установлен на '-age'). reverse не задано, что означает, что используется значение по умолчанию false.

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

Также можно вызвать фильтр orderBy вручную, введя $filter, получив функцию фильтра с помощью $filter('orderBy'), и вызвав возвращённую функцию фильтра с требуемыми параметрами.

Пример:

© 2010–2017 Google, Inc.
Licensed under the Creative Commons Attribution License 4.0.
https://code.angularjs.org/1.3.20/docs/api/ng/filter/orderBy

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API