Files

35 lines
1.6 KiB
Markdown
Raw Permalink Normal View History

# 2026-06-07 推送页目标路径默认值与 per-server 回退
## 摘要
修复推送页无法使用「服务器管理」中各机 `target_path` 的问题;列表增加目标路径列与批量检测。
## 动机
- 设计与后端均支持:推送页 **留空** → 按每台 `servers.target_path`**填写** → 统一覆盖
- 此前误将推送页默认设为 `/www/wwwroot`,导致列表里配置的路径被全局覆盖、形同无效
- 服务器列表无目标路径列,无法核对配置;后端已有 `POST /servers/batch/detect-path` 但前端无入口
## 涉及文件
- `frontend/src/composables/push/usePushForm.ts` — 默认留空,`effectiveTargetPath()`,留空校验
- `frontend/src/composables/push/usePushProgress.ts` / `usePushPreview.ts` — API 传 `effectiveTargetPath()`
- `frontend/src/components/push/PushToolbar.vue` — hint 说明留空/覆盖语义
- `frontend/src/components/push/PushServerGrid.vue` — 展示各机路径(含「未配置」)
- `frontend/src/pages/ServersPage.vue` — 列表列、详情面板、批量「检测目标路径」(见 [2026-06-07-servers-batch-detect-path-restore.md](./2026-06-07-servers-batch-detect-path-restore.md)
- `frontend/src/composables/push/types.ts``PushServerItem.target_path`
## 迁移 / 重启
无。仅前端构建部署。
## 验证
```bash
cd frontend && npm run build
# 服务器页:列表见目标路径列;编辑保存后刷新可见
# 推送页:目标路径留空 + 选中已配置服务器 → 预览/推送成功
# 推送页:填写 /other/path → 覆盖所有选中机
# 批量选中 → 「检测目标路径」调用 detect-path
```