问题
From this SO post i learned that in order to deal with large datasets you should set dataSource.paginator before dataSource.data in ngAfterViewInit.
However when doing this I am not able to set an initial pageIndex using this.paginator.pageIndex.
https://stackblitz.com/edit/angular-mat-table-v2
When I load my data in ngOnInit and the paginator after this in ngAfterViewInit, I am able to set the initial pageIndex:
https://stackblitz.com/edit/angular-mat-table-v1
回答1:
You can try this:
ngOnInit() {
this.dataSource.paginator = this.paginator;
}
ngAfterViewInit() {
setTimeout(() => {
this.paginator.pageIndex = 3;
this.todos$.subscribe((todos) => this.dataSource.data = todos);
}, 0);
}
来源:https://stackoverflow.com/questions/58518445/not-able-to-set-initial-pageindex-in-mat-paginator-when-dealing-with-large-datas