当前位置: 首页 > news >正文

微信小程序 解决tab页切换过快 数据出错问题

具体问题:切换tab页切换过快时,上一个列表接口未响应完和当前列表数据冲突 出现数据错误

具体效果如下:
请添加图片描述
解决方式:原理 通过判断是否存在request 存在中断 并发送新请求 不存在新请求

let shouldAbort = false; // 添加一个中断标志
let requestTask = null; // 请求实体
// 定义中断请求的方法
function abortRequest() {// 如果存在请求   则中断shouldAbort = true;if (requestTask) {requestTask.abort();}
}// 标签页切换chageIndex(e) {// 中断请求方法abortRequest();this.setData({selectIndex: e.currentTarget.dataset.index,['params.page']: 0,louList: [],})this.getList()},getList() {wx.showLoading()requestTask = wx.request({url: getApp().globalData.baseUrl + 'webform/v1/system/49603D09F8B64F068F77B7FC965410E0/app/a0d9b36099554cfe9996fd215005b11e/form/ed29dce86a134931a215a76c42ad5dee/find',header: {'Authorization': wx.getStorageSync('TaoLouToken')},method: 'post',data: this.data.params,success: res => {this.setListRes(res.data)},fail: err => {console.log(err)}})wx.hideLoading()},setListRes(res) {if (shouldAbort) {return;}// 处理请求结果if (res.success) {if (res.data.content.length > 0) {this.setData({louList: this.data.louList.concat(res.data.content),pageTotal: res.data.totalPages})} else {this.setData({pageTotal: res.data.totalPages})}}},
http://www.lryc.cn/news/233256.html

相关文章:

  • Taro编译警告解决方案:Error: chunk common [mini-css-extract-plugin]
  • 基于JavaWeb+SpringBoot+Vue电子商城微信小程序系统的设计和实现
  • JS进阶——作用域、解构、箭头函数
  • centos下安装mysql8版本
  • C++面试常考手写题目
  • LLM建模了什么,为什么需要RAG
  • 为开发GPT-5,OpenAI向微软寻求新融资
  • 创邻科技亮相ISWC 2023,国际舞台见证知识图谱领域研究突破
  • 开源博客项目Blog .NET Core源码学习(6:雪花算法)
  • 【Python】集合与字典
  • 【LeetCode】88. 合并两个有序数组
  • Linux文件权限
  • 〖大前端 - 基础入门三大核心之JS篇㉟〗- JavaScript 的DOM简介
  • CentOS中安装常用环境
  • python时间变化与字符串替换技术及读JSON文件等实践笔记
  • leetcode刷题日记:141. Linked List Cycle(环形链表)
  • html书本翻页效果,浪漫表白日记本(附源码)
  • 【Mysql】学习笔记
  • 工作记录-------java文件的JVM之旅(学习篇)---好理解
  • 城市内涝对策,万宾科技内涝积水监测仪使用效果
  • android的通知使用
  • 001 opencv addWeighted
  • 2311rust,到35版本更新
  • UniPro提高集成能力 让客户专注于交付价值
  • Python---函数的作用,定义,使用步骤(调用步骤)
  • ERP智能管理系统:智能化的未来之路
  • c++ memccpy和 = 都可以用于赋值操作
  • Golang for 循环中的隐式内存别名问题
  • 2023年亚太杯数学建模思路 - 复盘:光照强度计算的优化模型
  • Unity——利用Mesh绘制图形