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>
Другие вопросы по тегам