问题描述
当 macOS 系统外观设置为深色模式时,应用界面颜色显示异常:
- 窗口加载时白色闪烁:
BrowserWindow.backgroundColor 硬编码为 #FFFFFF,导致窗口创建时短暂显示白色背景
- 界面不跟随系统外观:切换 macOS 外观后,界面内容不会自动更新为深色/浅色主题
- Workboard 页面颜色硬编码:大量使用
bg-[#ece4d8]、text-[#7c7468] 等十六进制颜色,深色模式下无法适配
复现步骤
- macOS 系统设置 → 外观 → 选择「深色」
- 启动应用
- 观察窗口加载时的白色闪烁
- 进入 Workboard 页面,观察卡片、按钮、文字颜色
修复方案
- 主进程使用 Electron
nativeTheme API 动态设置窗口背景色
- 添加
matchMedia 监听器,运行时自动跟随系统外观变化
- 移除
useEffect 自动写入 localStorage 的逻辑,仅在用户手动切换时保存偏好
- 扩展 CSS 深色模式桥接规则,覆盖更多 Tailwind 类名变体
- 将 Workboard 页面中 30+ 处硬编码颜色替换为语义化设计 token
问题描述
当 macOS 系统外观设置为深色模式时,应用界面颜色显示异常:
BrowserWindow.backgroundColor硬编码为#FFFFFF,导致窗口创建时短暂显示白色背景bg-[#ece4d8]、text-[#7c7468]等十六进制颜色,深色模式下无法适配复现步骤
修复方案
nativeThemeAPI 动态设置窗口背景色matchMedia监听器,运行时自动跟随系统外观变化useEffect自动写入 localStorage 的逻辑,仅在用户手动切换时保存偏好