处理大型数据集时,无法在mat-paginator中设置初始pageIndex

时间:2019-10-23 08:18:17

标签: angular angular-material angular-material-table

我从post的那个SO中学到,为了处理大型数据集,您应该在ngAfterViewInit中的dataSource.data之前设置dataSource.paginator

但是,执行此操作时,无法使用this.paginator.pageIndex设置初始pageIndex。

https://stackblitz.com/edit/angular-mat-table-v2

当我将数据加载到ngOnInit中,并将分页器加载到ngAfterViewInit中时,我可以设置初始pageIndex:

https://stackblitz.com/edit/angular-mat-table-v1

1 个答案:

答案 0 :(得分:1)

您可以尝试以下方法:

  ngOnInit() {
     this.dataSource.paginator = this.paginator;
  }

  ngAfterViewInit() {
    setTimeout(() => {
     this.paginator.pageIndex = 3;
     this.todos$.subscribe((todos) => this.dataSource.data = todos);
    }, 0);
  }