Codex 写列表时,加载状态为什么不是加一个 loading 就够

发布时间:2026/10/6 21:30:13
Codex 写列表时,加载状态为什么不是加一个 loading 就够 “loading 加了吗?加了。”这是交接任务时最常听到的一句答复。但列表页的“加载中”从来不是一件事。首次进入页面要等首屏数据,翻页和查询要等表格数据,点保存要等提交结果。这三个“忙”发生在不同时刻,持续不同时间,也由不同动作结束。如果它们共用一个布尔值,麻烦就从这个共享点开始。一个 loading 值,其实背了三种不同的等待页面级的等待,起点是页面挂载,终点是首屏数据就绪。它要挡住的是整页空白,遮罩一关,页面就完整了。表格的等待,起点是某次查询、翻页或刷新,终点是这一批数据返回。它只关心表格区域,页面其它部分早就能用。按钮的等待,起点是用户点击,终点是这次提交的响应。它最担心的不是页面空不空,而是用户手快连点两次。三个等待的生命周期各不相同。共用loading时,任意一个请求结束都会把遮罩关掉,另外两个还在等的请求就失去了提示,或者更糟——它们自己也被顺手判成了“已完成”。第一种错位:谁先回来谁关灯两个列表请求并发时,遮罩只开了一次,却可能被第一个返回的请求提前关闭。假设进入页面触发首屏查询,用户又立刻点了翻页。首屏请求还在飞,翻页请求也发出去了。响应拦截器在任意请求 settle 时统一把loading置 false,那么翻页先回来,遮罩就关了,首屏数据其实还没到。当前web-skills的请求封装里,loading、dialogLoading、btnState三个状态在响应拦截器里是同时被关闭的。这带来一个判断点:当两个请求共享同一个全局 loading 时,先返回的请求会替后返回的请求关灯。封装本身没错,错在没有为“同一时刻可能有多份等待”留出计数或归属。第二种错位:旧响应关掉了新请求的提示翻页两次,第一次的请求慢,第二次的快。第二次返回、数据已经提交到表格,遮罩也关了;随后第一次的旧响应返回,又把全局 loading 设回 false。/

关于本文作者

来自尧图内容编辑团队

尧图内容编辑团队 内容团队

尧图内容编辑团队

本文由尧图网络内容编辑团队执笔。团队由资深项目经理、前端工程师与设计师组成,所有内容均来自亲手交付的真实项目,先讲清问题、再给出可落地的解法。尧图深耕北京网站建设十年,服务过京华建材集团、智造科技等各行业客户,把一线经验沉淀为可复用的行业观察。

  • 十年建站经验,覆盖建材、制造、服务、文创等
  • 项目经理把关选题与事实准确性
  • 工程师与设计师联合撰写专业细节
  • 统一编辑规范,保证文风与排版一致
  • 每月复盘转化数据,迭代选题方向

延伸阅读

相关资讯与近期热门内容

深度阅读推荐

建站决策前值得细读的三篇

网站改版的5个关键决策
2024-08-12

网站改版的5个关键决策

什么时候该改版、改到什么程度、如何避免流量掉光,京华建材集团改版复盘给出答案。

获取专属建站方案

看完文章,把您的行业与预算告诉我们,免费获取一份量身定制的官网建设方案与报价。

立即免费咨询