Vue+element实现分页查询

1 使用环境

  • Vue
  • Element 新版

用element的组件el-pagination来实现表格分页操作

2 代码

el-pagination属性

  <el-pagination
      v-model:current-page="page.index"
      :page-size="page.size"
      layout="total,prev, pager, next"
      :total="page.total"
      @current-change="handleCurrentChange">
  </el-pagination>

page属性

page:{
        //当前页码
        index:1,
        //每页展示数据数目
        size:2,
        // 总共数据数目
        total:10
      },

页码改变值函数

 // 监听页码值改变事件
    handleCurrentChange(currentPage){
      // 改变当前页码
      console.log(currentPage)
      this.page.index = currentPage;
      console.log(this.page.index)
      // 重新获取数据
      this.getTableData()
    },

3 实现效果

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-MRClEtfd-1635166442924)(C:\Users\HSLM\AppData\Roaming\Typora\typora-user-images\image-20211025203642572.png)]

4 踩坑

elpagination中的total属性没明白,将total设为2,我认识每页展示的数据直接由展示的表格决定,就没有设置page-size,无法点击页码的左右箭头。但是加上之后,就能点击。

因为页码的计算是由total总数来除每页显示的数据量得到的,所以page-size,total都需要进行绑定

element官网介绍

5 代码

<template>
	<el-pagination
      v-model:current-page="page.index"
      :page-size="2"
      layout="total,prev, pager, next"
      :total="3"
      @current-change="handleCurrentChange">
  	</el-pagination>
</template>

<script>
import {defineComponent, reactive,ref} from "vue";
export default defineComponent({
    methods: {
        // 监听页码值改变事件
        handleCurrentChange(currentPage){
          // 改变当前页码
          console.log(currentPage)
          this.page.index = currentPage;
          console.log(this.page.index)
          // 重新获取数据
         this.getTableData()
        },
    },
    data() {
        return {
          //页码
          page:{
            //当前页码
            index:1,
            //每页展示数据
            size:2,
            // 总页数
            total:10
          },
        }
    }
})
    
</script>
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值