简体   繁体   English

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

[英]Set pageIndex in Angular material paginator not working when page loaded for first time

I want Angular's Paginator starts from second page when page refreshed but I got this error我希望 Angular 的分页器在页面刷新时从第二页开始,但我收到了这个错误

ERROR TypeError: Cannot set property 'pageIndex' of undefined

I tried to use delay but it is not a good solution,我尝试使用延迟,但这不是一个好的解决方案,

HTML HTML

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

TypeScript TypeScript

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

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

ngOnInit hook doesn't have access of viewchild instance. ngOnInit钩子无权访问viewchild实例。 ViewChild instance is available only in or after afterViewInit hook. ViewChild实例仅在afterViewInit钩子中或之后可用。

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

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM