(编辑:jimmy 日期: 2024/11/16 浏览:2)
项目中常见的分页显示,第二页从1开始编号,然后在切换分页的过程中,偶现不对,都是小问题,整理记录一下,供参考。
template:
... <el-table-column type="index" label="编号" :index="getIndex" width="80px"> </el-table-column> ... <Pagination :total="total" :pageSize="pageSize" :currentPage="currentPage" @sizeChange="sizeChange" @currentChange="currentChange"> </Pagination>
script:
getIndex (index) { if (this.currentPage==0){ return (this.currentPage) * this.pageSize + index + 1 } else{ return (this.currentPage-1) * this.pageSize + index + 1 } },
由于后端第一页是从0开始的,而前端是从第一页开始,所以需要在当前页减1。关于分页,本页条数
sizeChange(val){ let that = this; that.currentPage = 1; that.pageSize = val; that.getPageInfo(that.currentPage, val); },
跳转页面
currentChange(val){ let that = this; that.currentPage = val; that.getPageInfo(val, that.pageSize); },
页面加载数据
getUserList(currentPage, pageSize){ let that = this; that.$axios({ method: 'get', url: '***', params: { currentPage: (currentPage || that.currentPage || 1)-1, pageSize: pageSize || that.pageSize || 10 }, needInterceptors: true, showError: true, loader: true }).then(function(result){ let data = result && result.data || []; let page = result && result.pageCont || {}; that.total = page.totalItems || 0; that.tableData = data; }) },
试了几次,这样写应该是没有问题的,也解决了后端传0开始的问题。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。