From 49317acee7896090abd9e2efb069e90712775b5c Mon Sep 17 00:00:00 2001 From: "Ray.Hao" <1490493387@qq.com> Date: Sun, 2 Feb 2025 23:12:00 +0800 Subject: [PATCH] =?UTF-8?q?fix(pagination):=20:bug:=20=E4=BF=AE=E5=A4=8Dwa?= =?UTF-8?q?tch=E7=9B=91=E5=90=ACprops.total=E5=AF=BC=E8=87=B4=E7=9A=84Type?= =?UTF-8?q?Script=E7=B1=BB=E5=9E=8B=E9=94=99=E8=AF=AF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit closed #IBJY7R --- src/components/Pagination/index.vue | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/src/components/Pagination/index.vue b/src/components/Pagination/index.vue index 759b4ce5..3a7e53dc 100644 --- a/src/components/Pagination/index.vue +++ b/src/components/Pagination/index.vue @@ -53,6 +53,7 @@ const currentPage = defineModel("page", { required: true, default: 1, }); + const pageSize = defineModel("limit", { type: Number, required: true, @@ -60,18 +61,18 @@ const pageSize = defineModel("limit", { }); watch( - props.total, + () => props.total, (newVal: number) => { - const lastPage = Math.ceil(newVal / pageSize.value) + const lastPage = Math.ceil(newVal / pageSize.value); if (newVal > 0 && currentPage.value > lastPage) { - currentPage.value = lastPage + currentPage.value = lastPage; emit("pagination", { page: currentPage.value, limit: pageSize.value }); } } ); function handleSizeChange(val: number) { - currentPage.value = 1 + currentPage.value = 1; emit("pagination", { page: currentPage.value, limit: val }); }