<p-dataTable #dt [value]="items" [rows]="10" [paginator]="true" [(first)]="first" (onPage)="paginate($event)">
Обходной путь — программно установить таблицу данных на определенную страницу.
@ViewChild('dt') dataTable: DataTable;
setCurrentPage(n: number) {
let paging = {
first: ((n - 1) * this.dataTable.rows),
rows: this.dataTable.rows
};
this.dataTable.paginate(paging);
}
// this.setCurrentpage(pageNumber) will set table to given page number
Чтобы получить текущую страницу, на которой вы находитесь, используйте событие (onPage), подобное этому
paginate(event) {
//event.first: Index of first record being displayed
//event.rows: Number of rows to display in new page
//event.page: Index of the new page
//event.pageCount: Total number of pages
let pageIndex = event.first/event.rows + 1 // Index of the new page if event.page not defined.
}
Кажется, существует дефект, возникающий для приведенного ниже способа установки номера страницы, поэтому вам может понадобиться использовать обходной путь, пока дефект не будет закрыт. В соответствии с документацией Primeng. Чтобы программно установить таблицу данных на определенную страницу, установите «first» с номером строки, которую вы хотите увидеть. Например
this.first = 10 //will show second page, OR
this.first=20 //will show third page.
28.06.2017