Files
vue-driven-cloud-storage/frontend/share.html
WanWanYun 136d45dee7 优化: 分享所有文件时支持点击文件图标放大查看,并可返回列表
功能描述:
- 在分享所有文件(目录分享)时,点击文件图标可以放大查看
- 显示效果与分享单个文件时相同(居中大图标显示)
- 左上角显示"返回列表"按钮,点击可返回文件列表
- 单个文件分享时不显示返回按钮(避免混淆)

实现内容:
1. 添加状态管理
   - viewingFile: 当前正在查看的文件(null表示在列表视图)

2. 新增方法
   - handleFileClick(file): 处理文件点击
     * 图片/视频/音频 → 打开媒体预览(保持原有行为)
     * 其他文件 → 显示详情页面
   - viewFileDetail(file): 设置viewingFile显示详情
   - backToList(): 清除viewingFile返回列表

3. 修改HTML模板
   - 标题添加返回按钮(条件:viewingFile存在且不是单文件分享)
   - 单文件显示条件:viewingFile || files.length === 1
   - 网格/列表视图条件:添加 !viewingFile 限制
   - 单文件显示内容:使用 viewingFile || files[0]

4. 防止bug设计
   - shareInfo.share_type !== 'file' 确保单文件分享不显示返回按钮
   - handleFileClick 区分媒体文件和普通文件
   - viewingFile 为null时正常显示文件列表

用户体验提升:
 点击文件图标即可放大查看详情
 查看体验与单文件分享一致
 返回按钮清晰明了
 媒体文件仍然打开预览
 单文件分享不显示返回按钮(避免混淆)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-11-12 18:24:29 +08:00

23 KiB