修复主题切换

This commit is contained in:
whyour
2022-05-23 12:03:01 +08:00
parent 6f13cc6e6f
commit 46512142fa
3 changed files with 39 additions and 50 deletions
+10 -2
View File
@@ -38,7 +38,15 @@ export const useCtx = () => {
};
export const useTheme = () => {
const [theme, setTheme] = useState<string>('');
const [theme, setTheme] = useState<'vs' | 'vs-dark'>();
const reloadTheme = () => {
const media = window.matchMedia('(prefers-color-scheme: dark)');
const storageTheme = localStorage.getItem('qinglong_dark_theme');
const isDark =
(media.matches && storageTheme !== 'light') || storageTheme === 'dark';
setTheme(isDark ? 'vs-dark' : 'vs');
};
useEffect(() => {
const media = window.matchMedia('(prefers-color-scheme: dark)');
@@ -63,5 +71,5 @@ export const useTheme = () => {
}
}, []);
return { theme };
return { theme, reloadTheme };
};