代码实现展示:

<template>   <div>     <el-table :data="tableList" border style="width: 100%;">       <el-table-column align="center" type="index" label="序号" width="50" />       <el-table-column prop="id" header-align="center" align="center" label="缺陷ID" />       <el-table-column prop="name" header-align="center" align="center" label="名称" />     </el-table>     <!-- 分页 -->     <div class="pagination-container" align="center">       <el-pagination :current-page="pageData.currentPage" :page-sizes="[5, 10, 15, 20]" :page-size="pageData.size" :total="pageData.total" layout="total, sizes, prev, pager, next, jumper"         @size-change="handleSizeChange" @current-change="handleCurrentChange" />     </div>   </div> </template> 
<script> export default {   components: {},   data() {     return {       pageData: {         total: 0,//总条数         size: 10,//默认每页显示10条         currentPage: 1,//默认显示第一页       },       start: 0, // 处理前端分页数据保存       end: 0, // 处理前端分页数据保存       tableData: [],       tableList: [], //table前端分页后显示数据       dataVal: [         { id: 1, name: "测试1" },         { id: 2, name: "测试2" },         { id: 3, name: "测试3" },         { id: 4, name: "测试4" },         { id: 5, name: "测试5" },         { id: 6, name: "测试6" },         { id: 7, name: "测试7" },         { id: 8, name: "测试8" },         { id: 9, name: "测试9" },         { id: 10, name: "测试10" },         { id: 11, name: "测试11" },       ],//需要展示的所有数据     };   },    created() {},   mounted() {},    computed: {},    methods: {     //获取数据的方法---假设现在获取到的数据就是dataVal,把this.dataVal赋给this.tableData,通过方法分段后,赋给this.tableList(table前端分页后显示数据)。     getTableData() {       this.tableList = [];       this.tableData = [];       // table数据处理       this.tableData = this.dataVal;       this.tableList = this.dataVal.slice(0, this.pageData.size);       this.pageData.total = this.tableData.length;       this.pageData.currentPage = 1;       this.start = 0;       this.end = this.pageData.size;     },          // 分页点击方法     //改变每页展示的条数     handleSizeChange(val) {       const preTable = this.tableData.slice(0, this.start);       const LastTable = this.tableData.slice(this.end);       this.tableData = preTable.concat(this.tableList).concat(LastTable);       this.pageData.size = val;       this.start = this.pageData.size * (this.pageData.currentPage - 1);       this.end =         this.pageData.size * (this.pageData.currentPage - 1) +         this.pageData.size;       this.tableList = this.tableData.slice(         this.pageData.size * (this.pageData.currentPage - 1),         this.pageData.size * (this.pageData.currentPage - 1) +           this.pageData.size       );     },     //改变页码     handleCurrentChange(val) {       const preTable = this.tableData.slice(0, this.start);       const LastTable = this.tableData.slice(this.end);       this.tableData = preTable.concat(this.tableList).concat(LastTable);       // 处理数据后分页       this.pageData.currentPage = val;       this.start = this.pageData.size * (this.pageData.currentPage - 1);       this.end =         this.pageData.size * (this.pageData.currentPage - 1) +         this.pageData.size;       this.tableList = this.tableData.slice(         this.pageData.size * (this.pageData.currentPage - 1),         this.pageData.size * (this.pageData.currentPage - 1) +           this.pageData.size       );       console.log("显示tablelist", this.tableList);     },   }, }; </script> 

分页效果:
vue element-----实现table前端分页