37 lines
1.2 KiB
Markdown
37 lines
1.2 KiB
Markdown
|
|
# Changelog — 终端页 SPA 迭代
|
||
|
|
|
||
|
|
**日期**: 2026-06-01
|
||
|
|
|
||
|
|
## 摘要
|
||
|
|
|
||
|
|
迭代 `#/terminal`:全屏布局、路由 `server_id`/`path` 联动、统一 WebSocket URL、连接状态与空状态 UX;文件管理页增加「终端」入口。
|
||
|
|
|
||
|
|
## 动机
|
||
|
|
|
||
|
|
用户要求对 `app/#/terminal` 继续迭代;生产页存在终端区域高度不足、从服务器二次进入不建会话、连接态不清晰等问题。
|
||
|
|
|
||
|
|
## 涉及文件
|
||
|
|
|
||
|
|
- `frontend/src/App.vue` — `nexus-terminal-main` 布局
|
||
|
|
- `frontend/src/pages/TerminalPage.vue` — 核心迭代
|
||
|
|
- `frontend/src/utils/wsUrl.ts`(新)
|
||
|
|
- `frontend/src/pages/FilesPage.vue` — 带当前路径打开终端
|
||
|
|
- `docs/design/specs/2026-06-01-terminal-spa-iteration-design.md`(新)
|
||
|
|
|
||
|
|
## 验证
|
||
|
|
|
||
|
|
1. `cd frontend && npm run type-check`
|
||
|
|
2. 打开 `#/terminal?server_id=8` → 终端区占满、状态「已连接」、可输入
|
||
|
|
3. 已在终端时从服务器点「终端」→ 切换对应标签
|
||
|
|
4. 文件管理选服务器+路径 →「终端」→ 自动 `cd` 到当前目录
|
||
|
|
5. `npm run test:e2e` 中 terminal 用例
|
||
|
|
|
||
|
|
## 迁移 / 重启
|
||
|
|
|
||
|
|
- 仅前端:需 `vite build` + 上传 `web/app/`
|
||
|
|
- 后端无变更
|
||
|
|
|
||
|
|
## 回滚
|
||
|
|
|
||
|
|
还原上述前端文件并重新构建部署。
|