tasks.md 1.6 KB

全局异步 Loading 锁交互任务

Task 1:SDD 基线

  • 创建 spec.md,明确统一处理范围和边界。
  • 创建 tasks.md,拆分平台级改动。
  • 创建 test-spec.md,定义前端验证范围。
  • 创建 execution-log.md,记录执行过程。

Task 2:全局 Loading Manager

  • 新增 forge-admin-ui/src/composables/useGlobalLoading.js
  • 支持引用计数、token 结束、全局状态、请求文案推导。
  • 支持 skipGlobalLoadingglobalLoading === falseglobalLoadingText
  • 支持 withGlobalLoadingmanagedFetch

Task 3:根级遮罩组件

  • 新增 forge-admin-ui/src/components/common/GlobalLoadingOverlay.vue
  • App.vue 中挂载遮罩。
  • 遮罩激活时全屏覆盖、禁用滚动、拦截点击/键盘/滚轮交互。

Task 4:统一请求接入

  • forge-admin-ui/src/utils/http/interceptors.js 接入全局 Loading。
  • 响应成功、业务失败、网络错误、超时、请求拦截错误都关闭 Loading。
  • 错误提示在 Loading 关闭后展示。
  • 路由守卫接入全局 Loading,保留现有 loading bar。

Task 5:特殊异步入口接入

  • 文件上传组件接入全局 Loading。
  • 图片上传组件接入全局 Loading。
  • 用户触发型下载 fetch 接入 managedFetch
  • SSE/流式生成 fetch 接入手动 token,完成/失败/取消后结束。

Task 6:验证与回填

  • 执行 git diff --check
  • 执行前端生产构建。
  • 更新 execution-log.md
  • 回填任务完成状态。