我正在使用prime-ng dataTable组件来显示用户列表.我希望这个列表按默认下降的第一列排序,并让dataTable将第一列显示为已排序.
<p-dataTable [value]="webUserSummaryList" [rows]="10" reorderableColumns="true">
<p-column field="userName" header="Username" [filter]="true" [sortable]="true"></p-column>
<p-column field="emailAddress" header="Email" [filter]="true" [sortable]="true"></p-column>
<p-column field="firstName" header="First Name" [filter]="true" [sortable]="true"></p-column>
<p-column field="lastName" header="Last Name" [filter]="true" filterMatchMode="contains" [sortable]="true"></p-column>
</p-dataTable>
Run Code Online (Sandbox Code Playgroud)
编辑:我已经想出一种设置默认排序列的方法是使用sortField ="userName".但是,我仍然无法将列默认为降序.
Hea*_*065 46
我想到了.可以添加以下两个属性:
sortField="userName" [sortOrder]="-1"
Run Code Online (Sandbox Code Playgroud)
sortField与列名匹配,sortOrder可以是1表示升序,-1表示降序.
这是工作解决方案:
<p-dataTable [value]="webUserSummaryList" [rows]="10" reorderableColumns="true" sortField="userName" sortOrder="-1">
<p-column field="userName" header="Username" [filter]="true" [sortable]="true"></p-column>
<p-column field="emailAddress" header="Email" [filter]="true" [sortable]="true"></p-column>
<p-column field="firstName" header="First Name" [filter]="true" [sortable]="true"></p-column>
<p-column field="lastName" header="Last Name" [filter]="true" filterMatchMode="contains" [sortable]="true"></p-column>
Run Code Online (Sandbox Code Playgroud)
如果对多个列进行排序,则可以使用以下参数对初始排序进行参数化(处理已弃用的 DataTable 和当前的 PrimeNG 表组件):
[multiSortMeta]="[{field: 'state', order: -1}, {field: 'displayName', order: 1}]"
Run Code Online (Sandbox Code Playgroud)
表组件示例(PrimeNG 7+):
<p-table [value]="products2" sortMode="multiple" [multiSortMeta]="[{field: 'code', order: -1}, {field: 'name', order: 1}, {field: 'category', order: -1}]">
<ng-template pTemplate="header">
<tr>
<th pSortableColumn="code">Code <p-sortIcon field="code"></p-sortIcon></th>
<th pSortableColumn="name">Name <p-sortIcon field="name"></p-sortIcon></th>
<th pSortableColumn="category">Category <p-sortIcon field="category"></p-sortIcon></th>
<th pSortableColumn="quantity">Quantity <p-sortIcon field="quantity"></p-sortIcon></th>
<th pSortableColumn="price">Price <p-sortIcon field="price"></p-sortIcon></th>
</tr>
</ng-template>
<ng-template pTemplate="body" let-product>
<tr>
<td>{{product.code}}</td>
<td>{{product.name}}</td>
<td>{{product.category}}</td>
<td>{{product.quantity}}</td>
<td>{{product.price | currency: 'USD'}}</td>
</tr>
</ng-template>
</p-table>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18555 次 |
| 最近记录: |