我在angular2项目中使用PrimeNg dataGrid。谁能告诉我如何获取页码?
答案 0 :(得分:3)
我花了两个多小时来理解我自己的简单解决方案。当你试图在分页菜单中获取当前页面(选中)时。 我为自己找到了这个解决方案,希望这会对你有所帮助(但我认为你不需要它)以及其他人会尝试获得同样的价值。
您需要使用lazyLoad
来使用dataTable <p-dataTable [totalRecords]="totalItems" [lazy]="true" [rows]="rows" [paginator]="true" (onLazyLoad)="searchCustomersLazy($event)">
</p-dataTable>
在我的案例中,并且你的func中(onLazyLoad)
发生的事件是searchCustomersLazy($event)
这样的
searchCustomersLazy(event) {
// some code here for example request to API
let currentPage: number;
//event.first = First row offset
//event.rows = Number of rows per page
currentPage = event.first / event.rows + 1;
console.log('currentPage = ' + currentPage);
}
答案 1 :(得分:1)
这已在PrimeNG DataGrid示例中给出: -
<强> http://www.primefaces.org/primeng/#/datagrid 强>
只需输入[paginator] =&#34; true&#34;在p-dataGrid中,以便您可以在dataGrid上看到您的paginator
<p-dataGrid [value]="cars" [paginator]="true" [rows]="10" (onPage)="onPage($event)">
如果您只有9行,则不会显示任何分页 所以你可以通过改变[rows]
中的值来显示行数和ts
private onPage(e) {
console.log(e);
}
你会得到第一个&amp;行值,如果您在第1页上 然后控制台结果将是
Object {first: 0, rows: 10}