PrimeNg <ptable>отсортированный столбец при загрузке страницы - PullRequest
0 голосов
/ 28 июня 2018

Я использую primeNg <p-table> для отображения данных, как показано ниже:

HTML

<p-table [value]="documents">
        <ng-template pTemplate="header">
            <tr>
                <th [pSortableColumn]="'sName'">
                    File Name
                    <p-sortIcon [field]="'sName'"></p-sortIcon>
                </th>
               <th [pSortableColumn]="'sType'">
                    File Type
                    <p-sortIcon [field]="'sType'"></p-sortIcon>
                </th>
               <th [pSortableColumn]="sDate">
                    File Date
                    <p-sortIcon [field]="'sDate"></p-sortIcon>
                </th>
            </tr>
        </ng-template>
    <ng-template pTemplate="body" let-doc>
        <tr>
            <td>
                {{doc.sName}}
            </td>

        <td>
                {{doc.sType}}
            </td>
        <td>
                {{doc.sDate}}
            </td>                
        </tr>
    </ng-template>
</p-table>

TS

ngOnInit(){
    //made a service call and got data for

this.documents=[{
   "sName":"Book",
   "sType":"PDF",
   "sDate":"20-02-1999"
   },
   {
   "sName":"Book",
   "sType":"PDF",
   "sDate":"09-10-2002"
   },
   {
   "sName":"Cook Book",
   "sType":"Text",
   "sDate":"16-12-1989"
   },
   {
   "sName":"Book",
   "sType":"PDF",
   "sDate":"25-04-2000"
   },
   {
   "sName":"File",
   "sType":"PDF",
   "sDate":"02-01-1989"
   }]
}

Мое требование - данные в поле File Date должны быть отсортированы по умолчанию при загрузке страницы. Подскажите, пожалуйста, как мне получить этот отсортированный столбец File Date при загрузке страницы в порядке убывания? Сортировка работает, как и ожидалось, но только ее отсортированная дата не отображается, пожалуйста, помогите мне с подходом.

Ответы [ 2 ]

0 голосов
/ 16 мая 2019

В случае sortMode = "множественный", чтобы достичь тех же результатов, установите следующее:

<p-table #dt ... sortMode="multiple" [multiSortMeta]="[{'field': 'organizationName', 'order': 1}]">
0 голосов
/ 29 июня 2018

Вы должны добавить директивы sortField и sortOrder к тегу p-table следующим образом:

<p-table [value]="documents" sortField="sDate" sortOrder="-1">

Кроме того, вы можете иметь опечатку в шаблоне, когда пишете sDate, у вас она иногда есть, например, "sDate", например, "sDate" и другие, например "sDate"

<p-sortIcon [field]="'sDate">
...