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

tab页面切换

在做tab的切换,一个是已读tab(展示已读列表)一个是未读的tab(展示未读列表),每次点击一个tab的时候都要去发送请求去获取信息,当快速切换按钮的时候会发发生什么问题?

在快速切换 “已读” 和 “未读” Tab 时,可能会出现以下问题:

  1. 请求竞态问题(Race Condition)

如果网络请求的返回顺序与切换顺序不一致,可能导致 UI 显示错误的数据。例如:

用户先点击 “未读”(请求 A 发送),紧接着快速点击 “已读”(请求 B 发送)。

如果请求 A 比请求 B 返回得慢,那么 UI 可能最终展示的是 “未读” 的数据,而当前 Tab 显示的是 “已读”,导致数据错乱。

  1. 重复请求,浪费资源

每次切换都重新请求数据,可能会导致短时间内大量无效的请求,影响服务器性能,同时也会增加前端的负担。

  1. 闪烁和加载状态异常

如果每次请求都触发加载状态(如 loading spinner),快速切换时 UI 可能会出现不断闪烁的情况,影响用户体验。

如何优化?

  1. 取消无效请求

使用 AbortController(在 fetch 里使用)。

在 Axios 里使用 取消请求(axios.CancelToken 或 abortController)。

例如:

let abortController =


http://www.kler.cn/a/592551.html

相关文章:

  • ansible速查手册
  • defineAsyncComponent和一般的import有什么区别
  • AI大模型在物联网行业的应用场景深度解析
  • 嵌入式面经-C语言:智能指针,`#define` 和 `const`,`typedef`,头文件中定义静态变量
  • 算法——广度优先搜索——跨步迷宫
  • List 和 Set的核心区别
  • Docker搭建MySQL主从服务器
  • Windows 图形显示驱动开发-WDDM 3.0功能- 硬件翻转队列(五)
  • 【Java进阶学习 第九篇】常用API(Array、冒泡选择排序、二分查找、正则表达式)
  • SpringData Elasticsearch:索引管理与全文检索
  • c++基础知识--返回值优化
  • Java Web应用程序实现用户登录、学生信息管理和验证码验证以及页面跳转等基本功能(IDEA)含(Ajax、JSTL)
  • 如何用AI轻松实现PPT自动生成,让工作更高效
  • IntelliJ IDEA 中 Git 高频问题与操作详解|新手避坑指南
  • 【css酷炫效果】纯CSS实现照片堆叠效果
  • Profinet转Modbus RTU/TCP以太网通讯处理器
  • 2025-03-19 学习记录--C/C++-C语言-单链表的按位查找和按值查找
  • 【图像处理基石】什么是HDR图片?
  • 单表查询和多表查询
  • 工业相机选型