实现
深色模式的实现采用了 Tailwind 的darkMode: 'class'
策略,通过向 html
元素添加 dark
类来切换深色模式。这种方法可以更好地控制深色模式,并防止主题错误的闪烁。
next-themes
提供程序已在应用程序中配置,自动处理主题持久化和系统偏好检测。Clerk 的 Provider 和 Sonner 等第三方组件也已预先配置为尊重此设置。
使用
默认情况下,每个应用程序主题将默认为用户的操作系统偏好。 要允许用户手动更改主题,您可以使用位于设计系统包中的ModeToggle
组件。我们已经将其添加到 app
侧边栏和 web
导航栏中,但您可以在任何地方导入它:
page.tsx
next-themes
中的 useTheme
钩子来检查主题。例如:
page.tsx