如何使用 PrimeNG 对多列进行排序

How to sort multiple columns using PrimeNG

如何在使用 p-table 时对多列进行排序,PrimeNG | Angular UI 组件库?

<h3>Multi Sort Columns</h3>
<p-table
  [columns]="cols"
  [value]="cars1"
  [lazy]="lazy"
  [lazyLoadOnInit]="lazyLoadOnInit"
    (onLazyLoad)="loadList($event)"
  [sortMode]="sortMode"
  [multiSortMeta]="multiSortMeta">
    <ng-template pTemplate="header" let-columns>
        <tr>
            <th *ngFor="let col of columns" [pSortableColumn]="col.field">
                {{col.header}}
            </th>
        </tr>
    </ng-template>
    <ng-template pTemplate="body" let-rowData let-columns="columns">
        <tr>
            <td *ngFor="let col of columns">
                {{rowData[col.field]}}
            </td>
        </tr>
    </ng-template>
</p-table>

是否可以有一个默认的预定义辅助排序列?

是的,您可以使用 multiSortMeta 属性.

定义多个预定义排序

这是一个例子:

[multiSortMeta]="[{field: 'quantity', order: -1}, {field: 'price', order: 1}]"

demo