| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950 |
- import { computed, toRefs } from 'vue'
- import { darkTheme, GlobalThemeOverrides } from 'naive-ui'
- import { useDesignStore } from '@/store/modules/designStore/designStore'
- import { borderRadius } from '@/settings/designSetting'
- import { toLight } from '@/utils'
- /**
- * * 设置全局主题
- */
- export const useThemeOverridesHook = () => {
- const designStore = useDesignStore()
- const { getAppTheme } = toRefs(designStore)
- const darkTheme = computed(
- (): GlobalThemeOverrides => {
- // 通用
- const commonObj = {
- common: {
- primaryColor: getAppTheme.value,
- primaryColorHover: toLight(getAppTheme.value, 6),
- primaryColorPressed: toLight(getAppTheme.value, 6),
- primaryColorSuppl: getAppTheme.value,
- borderRadius
- }
- }
- // 亮色主题
- const lightObject = {
- common: {
- ...commonObj.common
- }
- }
- // 暗色主题
- const dartObject = {
- common: {
- ...commonObj.common
- },
- LoadingBar: {
- colorLoading: getAppTheme.value
- }
- }
- return designStore.getDarkTheme ? dartObject : lightObject
- }
- )
- return darkTheme
- }
- // 返回暗黑主题
- export const useDarkThemeHook = () => {
- const designStore = useDesignStore()
- return computed(() => (designStore.getDarkTheme ? darkTheme : undefined))
- }
|