Files
Nexus/docs/changelog/2026-06-01-files-page-iteration.md
T

1.6 KiB
Raw Blame History

2026-06-01 文件管理页迭代 v2

日期

2026-06-01

变更摘要

#/files 第二轮迭代:修复下载、预览对话框、URL 状态、筛选/拖拽上传、符号链接展示。

动机

  • 下载 API 返回二进制流,原 http.post JSON 解析导致「下载已开始」但实际失败
  • 预览用 snackbar 无法阅读;刷新丢失当前路径
  • 对标历史 file-manager v2 规划中的状态栏、拖拽、筛选能力

涉及文件

  • frontend/src/api/index.tsfetchAuthed / http.download
  • frontend/src/utils/fileDownload.ts — 浏览器保存 Blob
  • frontend/src/pages/FilesPage.vue — UI/交互迭代
  • frontend/src/utils/remotePath.tsvalidatePathSegment
  • frontend/src/utils/fileBrowse.ts / types/api.ts — symlink
  • server/api/sync_v2.py — browse 返回 symlink + link_target
  • docs/design/plans/2026-06-01-files-page-iteration.md

迁移 / 重启

  • 前端构建部署至 web/app/
  • 后端 sync_v2.py 需部署并 supervisorctl restart nexussymlink 字段)

追加(默认路径)

  • 文件管理器初始/切换服务器时默认打开 /www/wwwrootDEFAULT_FILES_ROOT

追加(交互)

  • 进入目录/符号链接:单击行即可(不再要求双击)
  • 普通文件:双击行打开 Monaco 编辑

验证方式

  1. 选服务器进入子目录,URL 含 ?server_id=&path=,刷新后位置保持
  2. 双击目录进入;面包屑/上级可用
  3. 下载文件可本地打开
  4. 查看文本文件弹出预览对话框
  5. 拖拽文件到列表区域触发上传
  6. 筛选框过滤当前目录文件名