element-plus分页组件current-change事件误触问题

问题背景:
cc
current-change事件是分页组件必不可少的事件,是换页需要使用到的事件,例如从第一页切换到第二页,问题是该组件除了会由用户手动切换分页触发外,还会因为页码的变化触发,或者说误触

<el-pagination :page-size="1" :current-page="paginationData.currentPage" 
:pager-count="7" :total="paginationData.siteTotal" 
:page-count="paginationData.pageCount"
@current-change="currentChange" layout="prev, pager, next"/>

页面的变化情况这里举例一种,也是博主遇到的情形

const 函数名 = async () => {
    const res = await 接口(selectQuality.value)
    siteData.value = res.data
    paginationData.siteTotal = res.total 
    paginationData.pageCount = Math.ceil(res.total / 10)
}

当搜索返回的数量为0时,那么Math.ceil计算得到的页面数量pageCount就变为0,没有页面数量,页码就变成了null,如下图所示:
空
而当页码自动变化后,就会触发其他的函数,导致一系列问题

解决方法就是给总页数添加默认值,代码如下:

const 函数名 = async () => {
    const res = await 接口(selectQuality.value)
    siteData.value = res.data
    paginationData.siteTotal = res.total || 0
    paginationData.pageCount = Math.ceil(res.total / 10) || 1 // 默认值
}

那么这样就不会因为返回的数值为0👉总页数为0👉页码变为null而导致其他的问题

仅供参考,代码写得好通常遇不到这个问题

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前端小王hs

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值