ab1c67dbc563983141c394e9bfcdc8fb3b50f156
- api/admin.js:setTimes(data, expected);⚠️ 只在基线**非空**时才带 expectedTimes (空对象会让后端误判"所有组都要求校验"而恒冲突)。 - Admin.vue(时间设置):timesBaseline 记录 fetchTimes 载入时的服务端旧值, ⛔ 不用表单当前值(那样永远等于提交值 ⇒ 校验恒真 = 假保护)。冲突时自动 fetchTimes 重载(表单已过期,拿它重试只会再冲突);其它失败保留用户输入。 - Admin.vue(轮播):carouselOrderDirty —— 拖拽只改前端顺序、不落库, 此前卡片"排序: N"用的是渲染下标,拖完立刻变新序号,看起来已生效、刷新却回退。 现加"排序未保存"标签 + 按钮文案变化,未保存状态可见。 - Admin.vue(权限):切菜单时 8s 节流重拉 /api/admin/me,权限变化即提示。 原先前端只在 onMounted 拉一次 ⇒ 被改权限后必须手动刷新页面, 否则停在旧菜单上每个请求都撞 403 且无任何提示。⛔ 不用 location.reload() (会丢未提交的表单输入)。
Description
No description provided
Languages
Vue
77.3%
JavaScript
20.9%
CSS
1.5%
HTML
0.3%