4

PrimeNG, p-table组件,当数据重新加载时,表格重置为第一个分页器选项卡。

在此处输入图像描述

重新加载数据时,是否有任何方法可以阻止该行为并使分页器保留在同一选定选项卡中(例如 2 或 4 或 5 等)?

我通过在循环中使用 setTimeout() 调用 RestAPI 每 10 秒重新加载一次数据,直到它停留在该页面上。

HTML

    <p-table #dt [columns]="cols" [value]="dataMarts" [paginator]="true" [rows]="15" [pageLinks]="5" [rowsPerPageOptions]="[5,10,15,20,50,100,200,500,1000]"sortField="Id" resetPageOnSort="false">

参考:https ://www.primefaces.org/primeng/#/table

不确定此行为是否与上述链接的“更改检测”部分中的给定解释有关。

更新:- 这个问题实际上是由导致始终显示第一个选项卡的属性sortField="Id"引起的。删除后工作正常。

4

1 回答 1

6

onPage您更改页面和属性时触发事件first,您可以留在您选择的页面上。

只需添加(onPage)="paginate($event)" [first]="first"到您的p-table相关 TS 代码:

paginate(event) {
    this.first = event.first;
}

event.first您选择的页面的第一个可见行在哪里。

StackBlitz

编辑

适用于 PrimeNG 5.2.4+

于 2018-06-06T18:18:04.937 回答