Перейти к основному содержимому

useSort

Сортирует данные в массиве data по указанному в sortOptions.fieldName полю согласно направлению сортировки sortDirection.

Тип sortOptions.fieldType должен соответствовать типу данных, содержащихся в указанном поле fieldName. Если в fieldType передано значение типа date, сортировка происходит по датам с учетом формата dateFormat. Допустимые форматы перечислены в библиотеке moment.js. Если формат не указан, по умолчанию используется формат ISO 8601.

Синхронный метод.

Параметры

data: Array

Массив сортируемых данных.

sortOptions: {fieldType: "string" | "date" | "number"  | "boolean", fieldName: string, sortDirection: 1 | -1 },  
dateFormat?: string

fieldType

Тип данных в поле для сортировки.

fieldName

Имя поля для сортировки данных.

dateFormat

Формат даты. Используется только в случае передачи типа date в парамере fieldType.

Примеры

const array = 
[
{ id: '1', subject: 'ObjectObject', creationDate: '1.10.2022', type: 1 },
{ id: '2', subject: '1', creationDate: '2.10.2022', type: 1 },
{ id: '3', subject: 'Строка', creationDate: '3.10.2022', type: 2 }
];
const sortSettings = {fieldType: 'date', fieldName: 'creationDate', sortDirection: 1, dateFormat: 'DD.MM.YYYY'};
const sortedData = useSort(array, sortSettings);

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

Array