我正在尝试转到mat-paginator的第一页,即重置分页,但是它不起作用。知道如何解决吗?
我的html就是这样
<mat-paginator [length]="itemTotal" [pageIndex]="page" [pageSize]="itemPage" (page)="pageEvent = getPublicationFollowersData($event)">
</mat-paginator>
打字稿:
getPublicationFollowersData(event?: PageEvent) {
this.getPublicationsUser(event.pageIndex);
}
然后我尝试使用以下方法初始化页面:
this.page = 1
但这不起作用。
答案 0 :(得分:1)
如果使用
@ViewChild(MatPaginator, { static : true} ) paginator: MatPaginator;
应该是
@ViewChild(MatPaginator, { static : false} ) paginator: MatPaginator;
如果static:true,则未定义分页器对象。
答案 1 :(得分:0)
您需要使用@MapsId
装饰器来选择分页器,然后设置分页器的ViewChild
属性。
pageIndex
答案 2 :(得分:0)
<mat-paginator #paginator [length]="length"
[pageSize]="pageSize"
[pageSizeOptions]="pageSizeOptions"
(page)="pageEvent = paginationClicked($event)">
</mat-paginator>
@ViewChild('paginator') paginator: MatPaginator;
this.paginator.firstPage();
答案 3 :(得分:0)
为材质角度分页器创建参照,并与数据源一起创建
dataSource: MatTableDataSource<any>;
@ViewChild(MatPaginator) paginator: MatPaginator;
您要使用以下代码重置分页器
this.dataSource.paginator = this.paginator;
您还可以通过调用分页器的首页方法来重置
this.paginator.firstPage();