element 分页器数据不刷新bug解决方案

使用Element 分页器开发遇到的一个问题,这里记录下,也希望能帮到其他人

问题描述

image-20211115164832269

例:在第一页中搜索’张三’,页面中展示4条数据,切换页码到第 5 页,搜索关键字 ‘张三’,页码显示 ‘共4条’ 但是在页面中没有数据展示,查看控制台,接口中也显示返回了4条数据。

解决方法

<el-button @click="pageIndex = 1;getDataList();">查询</el-button>

只需要在 搜索 按钮上加上 pageIndex = 1;,注意,一定要加在调用方法的前面,否则不会生效的

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Element UI 中,Pagination 分页组件只负责分页的显示和分页导航栏的生成。要将数据显示在分页上,需要手动实现相应的逻辑。 下面是一个简单的例子,演示如何将数据显示在 Pagination 分页上: ``` <template> <div> <table> <thead> <tr> <th>编号</th> <th>姓名</th> <th>年龄</th> </tr> </thead> <tbody> <tr v-for="(item, index) in listData" :key="index"> <td>{{ item.id }}</td> <td>{{ item.name }}</td> <td>{{ item.age }}</td> </tr> </tbody> </table> <el-pagination @current-change="handlePageChange" :current-page="currentPage" :page-sizes="[10, 20, 50, 100]" :page-size="pageSize" :total="total" /> </div> </template> <script> export default { data() { return { listData: [], // 列表数据 currentPage: 1, // 当前页码 pageSize: 10, // 每页数据量 total: 0, // 数据总数 }; }, methods: { // 处理分页页码变化事件 handlePageChange(currentPage) { this.currentPage = currentPage; this.fetchData(); }, // 从服务获取数据 fetchData() { // 发送请求,获取当前页码对应的数据 // ... // 模拟服务返回的数据 const data = [ { id: 1, name: '张三', age: 18 }, { id: 2, name: '李四', age: 20 }, { id: 3, name: '王五', age: 22 }, // ... ]; this.listData = data.slice( (this.currentPage - 1) * this.pageSize, this.currentPage * this.pageSize ); this.total = data.length; }, }, created() { this.fetchData(); }, }; </script> ``` 在上面的代码中,我们通过 `v-for` 指令将列表数据 `listData` 显示在表格中,同时在页面底部添加了 Pagination 分页组件。在 `handlePageChange` 方法中,我们监听了分页页码变化事件,并根据当前页码获取相应的数据。在 `fetchData` 方法中,我们模拟了从服务获取数据的过程,并将当前页码对应的数据保存在 `listData` 中,并将数据总数保存在 `total` 中。通过这样的方式,就可以将数据显示在 Pagination 分页上了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值