一、这是第一种方法:
1.:table-data=“tableDataShow”
2.tableDataShow: [], //假分页数据
pagination: {
pageSize: 10,
pageNum: 1,
total: 0
}
3.在接口方法中再调用一下fakePage()
4.
fakePage () {
//假分页
let size = this.pagination.pageSize
let page = this.pagination.pageNum
let list = [...this.tableData]//tableData是真实数据
this.tableDataShow = list.slice((page - 1) * size, page * size)
let len = list.length
this.pagination.total = len
},
二、第二种方法:后面发现第一种方法每点一页都会调用一下接口,数据量大的话会加载好久。
1.
:data="tableData?tableData.slice((pagination.page - 1) * pagination.size, (pagination.page - 1) * pagination.size + pagination.size):tableData"
<div class="override-default-pagination pager">
<el-pagination
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
:page-size.sync="pagination.size"
:current-page.sync="pagination.page"
:total="tableData?tableData.length:pagination.total"
:page-sizes="[10, 20, 40, 50, 100]"
layout=" prev,pager,next,sizes,jumper">
</el-pagination>
</div>
3.pagination: {
size: 10,
page: 1,
total: 0
},
4.方法里写:
//假分页
handleSizeChange (val) {
this.pagination.size = val
},
handleCurrentChange (val) {
this.pagination.page = val
},
5.接口里写
this.pagination.total = parseInt(res.total)