Angular Material Paginator不允许在检索数据后按下后退按钮



我在使用材质分页器时遇到问题。它正确地检索数据,分页器数据正确地更新,特别是pageIndex正确地递增,但项目编号没有更新,如下所示。我相信这是因为onChangedPage($event(函数,因为当我删除它时,一切都正常,但我的数据当然不会更新。

项目计数的屏幕截图

考虑到pageIndex工作正常,我想知道是什么原因导致这不起作用。这是我为分页器编写的代码。我的代码是动态的。

html:

<mat-paginator
[length]="totalMessages"
[pageSize]="messagesPerPage"
[pageSizeOptions]="pageSizeOptions"
(page)='onChangedPage($event)'
></mat-paginator>

TS:

onChangedPage(pageData: PageEvent) {
console.log(pageData);
this.currentPage = pageData.pageIndex + 1;
const endingIndex = this.messagesPerPage * this.currentPage;
const startingIndex = endingIndex - this.messagesPerPage;
this.isLoading = true;
console.log(endingIndex);
console.log(startingIndex);
this.Service
.getFunction(this..ticketNumber, startingIndex, endingIndex)
.subscribe(data => {
****taken out for security reasons
}

总结:本质上,我是在MongoDB文档中的嵌入式数组上分页,并使用$slice方法。我的后端逻辑很好,我正确地检索了所有内容,但由于某种原因,分页器没有更新我正在检索的项目的位置。任何帮助都将不胜感激,谢谢!

如果有人遇到这种类型的问题。我发现问题是因为我在调用后端数据时使用了加载微调器。这更改了视图并重置了页面数据。一旦我移除了微调器,它现在就可以正常工作了。

最新更新