feat(style): 使用Antd组件提供的切换主题功能 (#3051)

* perf(style): 使用antd4的暗黑主题

* refactor: 抽离切换暗黑主题模式
This commit is contained in:
invalid w 2023-09-21 10:40:09 +08:00 committed by GitHub
parent a6b65b58a1
commit dbdd811705
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 25 additions and 8266 deletions

View File

@ -1,5 +1,5 @@
<template>
<ConfigProvider :locale="getAntdLocale">
<ConfigProvider :locale="getAntdLocale" :theme="isDark ? darkTheme : {}">
<AppProvider>
<RouterView />
</AppProvider>
@ -11,11 +11,15 @@
import { AppProvider } from '@/components/Application';
import { useTitle } from '@/hooks/web/useTitle';
import { useLocale } from '@/locales/useLocale';
import 'dayjs/locale/zh-cn';
import { useDarkModeTheme } from '@/hooks/setting/useDarkModeTheme';
// support Multi-language
const { getAntdLocale } = useLocale();
const { isDark, darkTheme } = useDarkModeTheme();
// Listening to page changes and dynamically changing site titles
useTitle();
</script>

View File

@ -64,7 +64,7 @@
&-close {
width: auto !important;
outline: none;
background: #fff !important;
background: transparent !important;
font-weight: normal;
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,18 @@
import { computed } from 'vue';
import { theme } from 'ant-design-vue';
import { useRootSetting } from '/@/hooks/setting/useRootSetting';
import { ThemeEnum } from '/@/enums/appEnum';
export function useDarkModeTheme() {
const { getDarkMode } = useRootSetting();
const { darkAlgorithm } = theme;
const isDark = computed(() => getDarkMode.value === ThemeEnum.DARK);
const darkTheme = {
algorithm: [darkAlgorithm],
};
return {
isDark,
darkTheme,
};
}