Ngx-Datatable сортировка по столбцу даты не работает
У меня есть следующий код:
<ngx-datatable
class="material"
[rows]="rows"
[columnMode]="'force'"
[headerHeight]="50"
[footerHeight]="50"
[sorts]="[{prop: 'name', dir: 'desc'}]"
[limit]="3">
<ngx-datatable-column name="Name">
<ng-template let-row="row" ngx-datatable-cell-template>
{{row.name}}
</ng-template>
</ngx-datatable-column>
<ngx-datatable-column name="Date">
<ng-template let-row="row" ngx-datatable-cell-template>
{{row.date}}
</ng-template>
</ngx-datatable-column>
</ngx-datatable>
Мне нужно отсортировать по формату даты ("дд / мм / гггг") и ("чч: мм: сс дд / мм / гггг"). Я понимаю, что эта таблица просто сортирует по строковому формату, но когда я сортирую по дате, она работает неправильно.
Кто-то добрый, кто может мне помочь. Может быть, я должен создать конкретную сортировку или сравнение. Как мне это сделать?
Спасибо!
1 ответ
Ngx-таблицы можно сортировать по дате, но вам нужно указать, что это дата,
Вот небольшой кусок кода, который обрабатывает сортировку по дате
if (a instanceof Date && b instanceof Date) {
if (a < b) return -1;
if (a > b) return 1;
}
взяты из репозитория ngx-datatable.
Вы можете попытаться поставить трубку на свидание, так что Angular сделает вашу работу.
<ng-template let-row="row" ngx-datatable-cell-template>
{{row.date | date}}
</ng-template>