后端一次返回大量数据,前端做分页处理

问题描述:后端接口返回大量数据,没有做分页处理,不支持传参pageNum,pageSize

本文为转载文章,原文章:后端一次返回大量数据,前端做分页处理

1.template中

分页

javascript 复制代码
<el-pagination
  @size-change="handleSizeChange"
  :page-sizes="[10, 20, 50, 100]"
  style="float:right"
  @current-change="currentChangeHandle"
  :current-page="currentPage"
  :page-size="pageSize"
  :total="totalPage"
  layout="total, sizes,prev, pager, next, jumper">
</el-pagination>

对应的模型

javascript 复制代码
 data(){
   return{
     totalPage:0,      // 数据总条数
     currentPage:1,   // 当前页面
     pageSize:10,     // 当前页面显示条数
     dataList: [],		// 页面展示数据
     tableData: []		// 后端获取的总数据
   }
 },

2.script中

获取后端数据

javascript 复制代码
//获取初始数据
getDataList(){
  api.agentDealiyWMExport(this.dataForm).then(res=>{
    if(res.data.HEAD.CODE=='000'){
      this.totalPage=res.data.BODY.total;
      // 获取后端返回所有数据
      this.tableData=res.data.BODY.rows; 
      // 对所有数据进行处理,截取数据前 n条数据,显示到页面上
      this.dataList=this.tableData.slice(0, this.pageSize)
    }
  })
},

改变页数事件

javascript 复制代码
// val 是当前页数
currentChangeHandle (val) {
  this.currentPage=val;
  this.dataList = this.tableData.slice((val - 1) * this.pageSize, val * this.pageSize)
},

改变条数事件

javascript 复制代码
// val每页显示多少条
handleSizeChange(val) {
  this.dataForm.pageSize=val;
  this.dataList = this.tableData.slice((this.currentPage - 1) * val, this.currentPage * val)
},
相关推荐
deli0071 小时前
手机拍灯为什么有一条条黑纹?PWM 240Hz 实测
前端
wangruofeng6 小时前
AI Models 1.1.0 发布,查大模型价格、对比模型和找 API 地址
前端·aigc·ai编程
wangruofeng6 小时前
给前端开发者的 100 个设计参考网站
前端·设计
星栈9 小时前
视频即代码,Remotion 能做什么、不能做什么
前端·音视频开发
广州华水科技9 小时前
单北斗GNSS位移监测系统的应用与技术解析
前端
用户47949283569159 小时前
从一句话或代码仓到可交互 HTML:开源 Agent 画图技能 Archify v3.2 实测与选型边界
前端·后端·面试
风骏时光牛马11 小时前
生成一个AI多模态标题,仅输出一条标题,无额外文字、问句、备选、配图、文案等任何附加内容,不需要其他的任务服务 只要标题。
前端
wangruofeng12 小时前
从 GIF 到 AVIF:网页图片格式演进与 2026 年选型指南
前端·架构
清晨Coding13 小时前
为什么用 React Developer Tools 查看组件树这么乱?
前端·react.js
鶴哥只手遮天13 小时前
《Electron 45.2.3 内核解剖》第 4 章 补丁体系:380 个补丁改了什么
前端·electron