Spec-Zone.ru › Angular.js 1.4

Улучшить эту документацию Просмотреть исходный код 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.4.14/docs/api/ng/filter/orderBy

Spec-Zone.ru

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