Ngx-Datatable сортировка по столбцу даты не работает - PullRequest
0 голосов
/ 05 октября 2018

У меня есть следующий код:

<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 Ответ

0 голосов
/ 05 октября 2018

Ngx-таблицы можно сортировать по дате, но вам нужно указать, что это дата,

Вот небольшой фрагмент кода, который обрабатывает сортировку по дате

if (a instanceof Date && b instanceof Date) {
    if (a < b) return -1;
    if (a > b) return 1;
}

, взятый из ngx-хранилище данных.

Вы можете попытаться поставить трубку на вашу дату, так что angular сделает вашу работу.

<ng-template let-row="row" ngx-datatable-cell-template>
   {{row.date | date}}
</ng-template>
...