Commit 967b07b
committed
fix(settings): 修复主题切换双 Provider 冲突 + 双向同步
问题:
- fumadocs 的 RootProvider 内置 next-themes,与自己的 ThemeProvider
同时往 <html class> 写 light/dark,导致进入 /settings 时从黑闪白
- Header 右上角 ThemeToggle 切换主题后,/settings 表单选中态不更新
- Settings 保存时的语言设置写不到文档页能读到的位置
修复:
- RootProvider 加 theme={{ enabled: false }},禁用 fumadocs 内置主题
- SettingsForm 用 useTheme() 读当前主题作为初始值
- 监听 currentTheme 变化,同步到表单选中态
- 切主题按钮立即 setTheme(所见即所得,不用等保存)
- handleSave 保存成功后把 language 写 cookie,供 /docs Server Component 读1 parent 001fd16 commit 967b07b
1 file changed
Lines changed: 3 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
206 | 206 | | |
207 | 207 | | |
208 | 208 | | |
| 209 | + | |
| 210 | + | |
| 211 | + | |
209 | 212 | | |
210 | 213 | | |
211 | 214 | | |
| |||
0 commit comments