如何解决用angular切换页面后页码自动重置1
我不知道为什么在我将页面从 1 更改为 2 后,bookParams 中的 pageNumber 会自动重置为 1。
export class BookListComponent implements OnInit {
books: Book[];
bookParams: BookParams;
pagination: Pagination;
constructor(private bookService: BookService,private accountService: AccountService) {
accountService.currentUser$.pipe(take(1)).subscribe(user => {
this.bookParams = new BookParams(user);
console.log("contructor " + this.bookParams.pageNumber);
})
}
ngOnInit(): void {
let a = this.bookParams;
this.loadBooks();
}
loadBooks() {
console.log("loadBooks" + this.bookParams.pageNumber);
this.bookService.getBooks(this.bookParams).subscribe(response => {
this.books = response.result;
this.pagination = response.pagination;
this.pagination.currentPage = 1;
})
}
pageChanged(event: any) {
console.log("PageChange "+event.page);
this.bookParams.pageNumber = event.page;
this.loadBooks();
}
}
BookParams.ts
export class BookParams {
pageSize = 8;
pageNumber = 1;
}
解决方法
您的 pageChanged
函数调用您的 loadBooks
函数,该函数又包含以下行:
this.pagination.currentPage = 1;
因此,它会在每次页面更改后指向第一页(假设更改页面调用 pageChanged
函数 - 我们没有足够的信息与您发布的内容相关。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。