Angular 重新加载时或从另一页返回时,角度材质分页保留在当前页上
HTML- 当我们路由到另一页并返回到此列表页时,它不应重置为第一页。或者当我们重新加载页面时,它不应该重置为第一页。Angular 重新加载时或从另一页返回时,角度材质分页保留在当前页上,angular,Angular,HTML- 当我们路由到另一页并返回到此列表页时,它不应重置为第一页。或者当我们重新加载页面时,它不应该重置为第一页。 我们如何才能做到这一点?您是否尝试保持服务分页的当前状态?@Buzzinga在重新加载时不起作用。您可以将页面添加为queryparameter@Alexander是的,我错过了“重新加载”部分。@Alexander但是如果我以queryParams发送页面并假设移动到第3页,那么在重新加载/更改页面时,queryParams不会得到更新。 <div class=&quo
我们如何才能做到这一点?您是否尝试保持服务分页的当前状态?@Buzzinga在重新加载时不起作用。您可以将页面添加为queryparameter@Alexander是的,我错过了“重新加载”部分。@Alexander但是如果我以queryParams发送页面并假设移动到第3页,那么在重新加载/更改页面时,queryParams不会得到更新。
<div class="mat-table__bottom">
<mat-paginator #paginator [length]="totalLength" [pageSize]="page_size" [pageSizeOptions]="[10]"
(page)="pageEvent = $event; changePage($event)" showFirstLastButtons>
</mat-paginator>
</div>
ngOnInit(): void {
this.loadList(this.page, this.page_size, this.search);
}
ngAfterViewInit() {
this.dataSource.paginator = this.paginator;
}
loadList(page, page_size, search) {
this.userService.getList(page, page_size, search)
.subscribe((res: any) => {
this.totalLength = res.body.data.count;
this.data = res.body.data;
this.dataSource = new MatTableDataSource(res.body.data.rows);
this.dataSource.sort = this.sort;
this.cd.detectChanges();
}
}
changePage(event: PageEvent) {
this.page = event.pageIndex;
this.page_size = event.pageSize;
this.page = this.page + 1;
this.loadList(this.page, this.page_size, this.search)
}