From 7ebc257ef9fa50f2c68d465730581cf4015916ac Mon Sep 17 00:00:00 2001 From: hobee Date: Tue, 25 Mar 2025 02:19:02 +0800 Subject: [PATCH] =?UTF-8?q?feat(=E4=B8=BB=E9=A2=98):=20=E6=B7=BB=E5=8A=A0s?= =?UTF-8?q?ettingTheme=E5=AD=97=E6=AE=B5=E4=BB=A5=E5=A2=9E=E5=BC=BA?= =?UTF-8?q?=E4=B8=BB=E9=A2=98=E5=88=87=E6=8D=A2=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 在ThemeProvider中添加settingTheme字段,用于在Sidebar组件中显示当前主题状态。这样用户可以更直观地了解当前主题设置 --- src/renderer/src/components/app/Sidebar.tsx | 7 +++++-- src/renderer/src/context/ThemeProvider.tsx | 8 +++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/src/renderer/src/components/app/Sidebar.tsx b/src/renderer/src/components/app/Sidebar.tsx index 015f49f682..9fc151e16a 100644 --- a/src/renderer/src/components/app/Sidebar.tsx +++ b/src/renderer/src/components/app/Sidebar.tsx @@ -35,7 +35,7 @@ const Sidebar: FC = () => { const { t } = useTranslation() const navigate = useNavigate() const { sidebarIcons } = useSettings() - const { theme, toggleTheme } = useTheme() + const { theme, settingTheme, toggleTheme } = useTheme() const { pinned } = useMinapps() const onEditUser = () => UserPopup.show() @@ -87,7 +87,10 @@ const Sidebar: FC = () => { - + toggleTheme()}> {theme === 'dark' ? ( diff --git a/src/renderer/src/context/ThemeProvider.tsx b/src/renderer/src/context/ThemeProvider.tsx index 95478b35d9..5a3fd812e3 100644 --- a/src/renderer/src/context/ThemeProvider.tsx +++ b/src/renderer/src/context/ThemeProvider.tsx @@ -5,11 +5,13 @@ import React, { createContext, PropsWithChildren, useContext, useEffect, useStat interface ThemeContextType { theme: ThemeMode + settingTheme: ThemeMode toggleTheme: () => void } const ThemeContext = createContext({ theme: ThemeMode.light, + settingTheme: ThemeMode.light, toggleTheme: () => {} }) @@ -55,7 +57,11 @@ export const ThemeProvider: React.FC = ({ children, defaultT } }) - return {children} + return ( + + {children} + + ) } export const useTheme = () => useContext(ThemeContext)