第一次加载页面时,在 Angular 材料分页器中设置 pageIndex 不起作用

Dia*_*mir 4 paginator angular-material angular

我希望 Angular 的分页器在页面刷新时从第二页开始,但出现此错误

ERROR TypeError: Cannot set property 'pageIndex' of undefined
Run Code Online (Sandbox Code Playgroud)

我尝试使用延迟但这不是一个好的解决方案,

超文本标记语言

<mat-paginator #paginator
  showFirstLastButtons
  [length]="length"
  [pageSize]="pageSize"
  [pageSizeOptions]="pageSizeOptions"
  (page)="pageEvent = changePage($event)">
</mat-paginator>

Run Code Online (Sandbox Code Playgroud)

打字稿

  @ViewChild('paginator', { static: true }) paginator;
  pageSize = 5;
  pageSizeOptions: number[] = [5, 10, 50, 100];
  pageEvent: PageEvent;
  buttonDisablity = true;

  ngOnInit(): void {
    this.paginator.pageIndex = 2;
  }

Run Code Online (Sandbox Code Playgroud)

mic*_*yks 7

ngOnInit钩子没有viewchild实例的访问权限。ViewChild实例仅在钩子中或钩子之后可用afterViewInit

ngAfterViewInit(): void {
    this.paginator.pageIndex = 2;
}
Run Code Online (Sandbox Code Playgroud)