我使用得是el-table+el-pagination来实现的,
话不多说,直接上代码

html代码部分

<!-- table --><el-table :data="showData" stripe style="width:100%" v-loading="listLoading"><el-table-column type="selection" width="55"></el-table-column><!-- <el-table-column type="index" prop="id" label="编号" width="100" sortable></el-table-column> --><el-table-column prop="id" label="编号" width="100" sortable></el-table-column><el-table-column prop="name" label="姓名" width="100" sortable></el-table-column><el-table-column prop="sex" label="性别" width="100" sortable></el-table-column><el-table-column prop="age" label="年龄" width="100" sortable></el-table-column><el-table-column prop="birthday" label="生日" width="120" sortable></el-table-column><el-table-column prop="address" label="地址" min-width="180" sortable></el-table-column><el-table-column label="操作"><template scope="scope"><!-- <el-button size="small" @click="handleEdit(scope.$index, scope.row)">编辑</el-button><el-button type="danger" size="small" @click="handleDel(scope.$index, scope.row)">删除</el-button>--><el-button size="small" @click="handleEdit(scope.row)">编辑</el-button><el-button type="danger" size="small" @click="handleDel(scope.row)">删除</el-button></template></el-table-column></el-table><!-- table 传值 --><!-- <List :message='byValue'></List> --><!-- 分页 paging --><el-pagination @size-change="handleSizeChange"@current-change="handleCurrentChange":current-page="currentPage":page-size="pageSize" layout="total, prev, pager, next"background:total="total" ></el-pagination>

JavaScript代码部分

export default {name: "Dashbord",components: {Dialog},inject: ["reload"], //注入reload方法
  data() {return {showData:[],total: 0,pageSize: 10,listLoading: false,currentPage:1,};},created(){this.getUsers();this.showTable(this.currentPage,this.pageSize);},// mounted() {//   this.getUsers();// },
  methods: {handleSizeChange: function (size) {this.pageSize = size;console.log(this.pageSize);  //每页下拉显示数据this.showTable(this.currentPage,this.pageSize);},handleCurrentChange: function(currentPage){this.currentPage = currentPage;console.log(this.currentPage);  //点击第几页this.showTable(this.currentPage,this.pageSize);},showTable(currentPage,pageSize){this.listLoading = true;this.$axios({method: "POST",url: "http://localhost:8080/api/pagingQuery",changeOrigin: true,data: {"start":currentPage,"pageSize":pageSize}}).then(result => {this.listLoading = false;this.showData = result.data;});}},
};
</script>

在el-table中,最重要的是:data,这个数据是根据你分页效果去后台请求返回的数据。
在el-pagination中,:page-size表示每页显示的数据条数;
:total:表示总的数据数量;
:page-sizes:表示我们可以自定义每页显示的数量;
:currentPage:表示当前的页码;
@size-change="handleSizeChange",@current-change="handleCurrentChange" 是el-pagination中的事件,表示每页显示的数据和页码的变化;
layout:表示分页栏的布局;
background:表示是否带背景色

需要主要的是start变量,因为在后台程序中,我使用的是limit(m,n)来进行分页查询的:

select * from list limit #{start},#{pageSize}

start表示开始查询的位置,pageSize表示从开始位置要查询的数量; 如果后台没有做start的处理,在这里我们可以在showTable方法中做处理:

currentPage = (currentPage-1) * pageSize;

这样就能够正确查询数据

转载于:https://www.cnblogs.com/Buries/p/11304061.html

vue+element-ui实现分页相关推荐

  1. Vue + Element UI 表格分页记忆选中,分页切换 页面打勾不丢失

    方法一: 官方也有基于这种操作给出通过属性解决的方法: <el-table :row-key="rowKey"><el-table-column type=&qu ...

  2. Vue + Element UI 表格分页记忆选中

    官方基于这种操作给出通过属性解决的方法: :row-key:行数据的 Key ,用来优化 Table 的渲染:在使用 reserve-selection 功能与显示树形数据时,该属性是必填的.类型为 ...

  3. 【前端】Vue+Element UI案例:通用后台管理系统-用户管理:Table表格增删查改、Pagination分页、搜索框

    文章目录 目标 代码 0.结构 1.按钮-删除 2.按钮-编辑 3.debug 4.样式 5.分页Pagination:功能 6.分页Pagination:样式 7.搜索框:功能 8.搜索框:样式 总 ...

  4. 基于vue(element ui) + ssm + shiro 的权限框架

    zhcc 基于vue(element ui) + ssm + shiro 的权限框架 引言 心声 现在的Java世界,各种资源很丰富,不得不说,从分布式,服务化,orm,再到前端控制,权限等等玲琅满目 ...

  5. 【前端】Vue+Element UI案例:通用后台管理系统-用户管理:Form表单填写、Dialog对话框弹出

    文章目录 目标 代码 0.页面结构 1.新增按钮和弹出表单:结构 2.新增按钮和弹出表单:点击新增弹出表单 3.表单样式 4.表单验证 5.表单的提交和取消功能:接口.mock相关准备 6.表单的提交 ...

  6. 【前端】Vue+Element UI案例:通用后台管理系统-登陆不同用户显示不同菜单、动态添加路由

    文章目录 目标 代码 0.动态地显示菜单:store 1.动态注册路由 2.解决刷新后摆平问题 总代码 本篇修改的代码文件 tab.js 参考视频: VUE项目,VUE项目实战,vue后台管理系统,前 ...

  7. 【前端】Vue+Element UI案例:通用后台管理系统-代码总结(已开源)

    文章目录 前言 项目文件目录 api mockServe home.js permission.js index.js mock.js user.js assert components Common ...

  8. vue + element ui 的后台管理系统框架_从零开始搭建 VUE + Element UI后台管理系统框架...

    点击右上方红色按钮关注"web秀",让你真正秀起来 前言 后台管理系统前端框架,现在很流行的形式都是,上方和左侧都是导航菜单,中间是具体的内容.比如阿里云.七牛云.头条号.百家号等 ...

  9. Vue + Element UI 实现 登陆注册基本demo实例

    Vue + Element UI 实现权限管理系统 前端篇(二):Vue + Element 案例 导入项目 打开 Visual Studio Code,File --> add Folder ...

  10. 【Vue 快速入门】从零开始搭建 VUE + Element UI后台管理系统框架

    [Vue 快速入门]从零开始搭建 VUE + Element UI后台管理系统框架 前言 后台管理系统前端框架,现在很流行的形式都是,上方和左侧都是导航菜单,中间是具体的内容.比如阿里云.七牛云.头条 ...

最新文章

  1. PHP的方法重载实现
  2. 获取打印机分辨率_喵喵机P2S热敏打印机,升级屏幕带来了哪些体验??
  3. opencv cv::mat::data是什么数据类型?
  4. oracle java 绑定变量的值_Oracle SQL调优之绑定变量用法简介
  5. 运筹学上机实验 - 单纯形方法的两阶段法
  6. cxf 服务端soap报文_使用Apache CXF开发SOAP Web服务
  7. cglib和jdk动态代理以及 按指定顺序排列list
  8. android带翻页功能的表格,Android水平翻页列表,相仿水平GridVIew
  9. 如何使用键盘操控苹果Mac?
  10. 编程小工具总结(一) 取色器
  11. pip快速下载python包
  12. 在面试时应该如何自我介绍?
  13. 安装texthero踩过的坑
  14. DAS、NAS、SAN三种存储架构比较
  15. 网页版php手机端怎么转wap页,【原创文章】介绍一个手机浏览器中ecshop WAP版和PC版自由切换的方法...
  16. k8s之亲和性、反亲和性
  17. Android输入事件从读取到分发三:InputDispatcherThread线程分发事件的过程
  18. Shell 脚本 一键安装/一键卸载/一键重装 Docker
  19. 在线教育,如何选择一个合适的视频云平台
  20. 首届“全球创新创业教育论坛” 暨“大学三基工程”工作会议将于9月26-28日在湖南韶山召开

热门文章

  1. VMware vSphere 5.1 学习系列之:安装 vCenter Server
  2. MySQL Workbench 5.2.45 GA 发布
  3. 遇到mysql数据表不存在的问题
  4. 求助:如何在Vista系统环境下增加系统盘C盘的容量?
  5. 用纸作出来的艺术品 漂亮!
  6. CSS :hover 伪类
  7. android面试题总结加强
  8. 嵌入式系统开发方向的面试题总结
  9. 计算机网络:socket-udp
  10. java:接口和抽象