feat: 前端整体重写为 QQ 邮箱风格布局 #6

Merged
kevin merged 1 commits from dsh/mailgo:feature/qq-mail-frontend into main 2026-08-17 16:42:34 +08:00
Contributor

概述

将 MailGo Web 前端整体重写为 QQ 邮箱风格的布局:顶部导航栏(Logo + 搜索框 + 用户信息)+ 左侧文件夹导航(橙色「写信」按钮 + 收件箱/草稿箱/已发送)+ 右侧内容区。

主要变更

模板(internal/web/templates/)

  • base.html:全新设计系统(CSS 变量、顶栏、侧栏组件),兼容管理后台原有组件类(card/btn/form-group/table 等)
  • inbox / drafts / sent:邮件列表页重写 —— 全选、批量删除、顶栏搜索实时过滤、未读蓝点与加粗、发件人头像圆标、QQ 式短日期(今天 HH:mm / 今年 MM-DD)、悬停行内删除、分页
  • view:阅读页 —— 返回/回复/删除工具条、发件人卡片(头像+姓名+地址)、附件区
  • compose:写信页 —— 发送/附件/取消按钮、收件人·抄送·主题字段行、附件 chips(可移除)、配额进度条
  • settings / login / banned:设置页(账号信息 + 配额进度条 + 客户端配置帮助)、居中卡片登录页、封禁提示页

Go

  • internal/web/server.go:新增模板函数 mailName / mailEmail / initial / truncate / shortDate / avatarStyle
  • internal/web/handlers/mail.go:侧栏文件夹计数(收件箱未读红标、草稿/已发送数量)
  • internal/web/render_test.go:新增模板渲染回归测试(渲染全部页面,防止模板语法/数据引用错误)

验证

  • go build / go vet / 全量 go test 通过
  • playwright 布局审计:无横向溢出、顶栏/侧栏/列表尺寸正确
  • 交互测试:全选、批量删除按钮状态、搜索过滤、悬停行内删除均正常
  • 已部署到生产环境(/opt/mail_go)并验证线上页面

备注

  • 写信页富文本编辑器仍使用 Quill CDN(与原先一致)
  • 管理后台页面共享新设计系统样式,功能不变
## 概述 将 MailGo Web 前端整体重写为 QQ 邮箱风格的布局:顶部导航栏(Logo + 搜索框 + 用户信息)+ 左侧文件夹导航(橙色「写信」按钮 + 收件箱/草稿箱/已发送)+ 右侧内容区。 ## 主要变更 ### 模板(internal/web/templates/) - **base.html**:全新设计系统(CSS 变量、顶栏、侧栏组件),兼容管理后台原有组件类(card/btn/form-group/table 等) - **inbox / drafts / sent**:邮件列表页重写 —— 全选、批量删除、顶栏搜索实时过滤、未读蓝点与加粗、发件人头像圆标、QQ 式短日期(今天 HH:mm / 今年 MM-DD)、悬停行内删除、分页 - **view**:阅读页 —— 返回/回复/删除工具条、发件人卡片(头像+姓名+地址)、附件区 - **compose**:写信页 —— 发送/附件/取消按钮、收件人·抄送·主题字段行、附件 chips(可移除)、配额进度条 - **settings / login / banned**:设置页(账号信息 + 配额进度条 + 客户端配置帮助)、居中卡片登录页、封禁提示页 ### Go - **internal/web/server.go**:新增模板函数 mailName / mailEmail / initial / truncate / shortDate / avatarStyle - **internal/web/handlers/mail.go**:侧栏文件夹计数(收件箱未读红标、草稿/已发送数量) - **internal/web/render_test.go**:新增模板渲染回归测试(渲染全部页面,防止模板语法/数据引用错误) ## 验证 - go build / go vet / 全量 go test 通过 - playwright 布局审计:无横向溢出、顶栏/侧栏/列表尺寸正确 - 交互测试:全选、批量删除按钮状态、搜索过滤、悬停行内删除均正常 - 已部署到生产环境(/opt/mail_go)并验证线上页面 ## 备注 - 写信页富文本编辑器仍使用 Quill CDN(与原先一致) - 管理后台页面共享新设计系统样式,功能不变
dsh added 1 commit 2026-08-17 16:42:14 +08:00
- base.html: 全新设计系统(顶部导航栏 + 左侧文件夹栏 + 内容区三栏布局,
  蓝/橙主题色),兼容管理后台原有组件类
- inbox/drafts/sent: 邮件列表页重写,支持全选、批量删除、实时搜索过滤、
  未读标记、头像圆标、QQ 式短日期、悬停行内删除、分页
- view: 邮件阅读页重写(返回/回复/删除工具条、发件人卡片、附件区)
- compose: 写信页重写(发送/附件/取消、字段行、附件 chips、配额进度条)
- settings/login/banned: 设置页(账号信息+配额条)、登录页、封禁页重写
- server.go: 新增模板函数 mailName/mailEmail/initial/truncate/shortDate/avatarStyle
- mail.go: 侧栏文件夹计数(收件箱未读红标、草稿/已发送数量)
- 新增 render_test.go 模板渲染回归测试
kevin merged commit 9e7e8e1fb5 into main 2026-08-17 16:42:34 +08:00
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kevin/mailgo#6