From b06f6a316b6a8293bb8aba6bfff33336b66c032a Mon Sep 17 00:00:00 2001 From: ahaos <8406649+lhailgl@user.noreply.gitee.com> Date: 星期三, 13 十二月 2023 09:01:52 +0800 Subject: [PATCH] !64 版本升级 * Merge branch 'dev' of gitee.com:JavaLionLi/plus-ui into ts * 升级依赖 * !61 fix: 删除重复环境变量ElUploadInstance * fix: 删除重复环境变量ElUploadInstance --- src/store/modules/settings.ts | 96 ++++++++++++++++++++++++++---------------------- 1 files changed, 52 insertions(+), 44 deletions(-) diff --git a/src/store/modules/settings.ts b/src/store/modules/settings.ts index 32119cd..861c6c8 100644 --- a/src/store/modules/settings.ts +++ b/src/store/modules/settings.ts @@ -2,53 +2,61 @@ import defaultSettings from '@/settings'; import { SettingTypeEnum } from '@/enums/SettingTypeEnum'; import { useDynamicTitle } from '@/utils/dynamicTitle'; -import { Ref } from 'vue'; - export const useSettingsStore = defineStore('setting', () => { - const storageSetting = JSON.parse(localStorage.getItem('layout-setting') || '{}'); + const storageSetting = JSON.parse(localStorage.getItem('layout-setting') || '{}'); + const title = ref<string>(defaultSettings.title); + const theme = ref<string>(storageSetting.theme || defaultSettings.theme); + const sideTheme = ref<string>(storageSetting.sideTheme || defaultSettings.sideTheme); + const showSettings = ref<boolean>(storageSetting.showSettings || defaultSettings.showSettings); + const topNav = ref<boolean>(storageSetting.topNav === undefined ? defaultSettings.topNav : storageSetting.topNav); + const tagsView = ref<boolean>(storageSetting.tagsView === undefined ? defaultSettings.tagsView : storageSetting.tagsView); + const fixedHeader = ref<boolean>(storageSetting.fixedHeader === undefined ? defaultSettings.fixedHeader : storageSetting.fixedHeader); + const sidebarLogo = ref<boolean>(storageSetting.sidebarLogo === undefined ? defaultSettings.sidebarLogo : storageSetting.sidebarLogo); + const dynamicTitle = ref<boolean>(storageSetting.dynamicTitle === undefined ? defaultSettings.dynamicTitle : storageSetting.dynamicTitle); + const animationEnable = ref<boolean>( + storageSetting.animationEnable === undefined ? defaultSettings.animationEnable : storageSetting.animationEnable + ); + const dark = ref<boolean>(storageSetting.dark || defaultSettings.dark); - const prop: { [key: string]: Ref<any> } = { - title: ref<string>(''), - theme: ref<string>(storageSetting.theme || defaultSettings.theme), - sideTheme: ref<string>(storageSetting.sideTheme || defaultSettings.sideTheme), - showSettings: ref<boolean>(storageSetting.showSettings), - topNav: ref<boolean>(storageSetting.topNav || defaultSettings.topNav), - tagsView: ref<boolean>(storageSetting.tagsView || defaultSettings.tagsView), - fixedHeader: ref<boolean>(storageSetting.fixedHeader || defaultSettings.fixedHeader), - sidebarLogo: ref<boolean>(storageSetting.sidebarLogo || defaultSettings.sidebarLogo), - dynamicTitle: ref<boolean>(storageSetting.dynamicTitle || defaultSettings.dynamicTitle), - animationEnable: ref<boolean>(storageSetting.animationEnable || defaultSettings.animationEnable), - dark: ref<boolean>(storageSetting.dark || defaultSettings.dark) - }; + const prop: { [key: string]: Ref<any> } = { + theme, + sideTheme, + showSettings, + topNav, + tagsView, + fixedHeader, + sidebarLogo, + dynamicTitle, + animationEnable, + dark + }; - const { title, theme, sideTheme, showSettings, topNav, tagsView, fixedHeader, sidebarLogo, dynamicTitle, animationEnable, dark } = prop; - - // actions - const changeSetting = (param: { key: SettingTypeEnum; value: any }) => { - const { key, value } = param; - if (key in prop) { - prop[key].value = value; - } - }; - const setTitle = (value: string) => { - title.value = value; - useDynamicTitle(); - }; - return { - title, - theme, - sideTheme, - showSettings, - topNav, - tagsView, - fixedHeader, - sidebarLogo, - dynamicTitle, - animationEnable, - dark, - changeSetting, - setTitle - }; + // actions + const changeSetting = (param: { key: SettingTypeEnum; value: any }) => { + const { key, value } = param; + if (key in prop) { + prop[key].value = value; + } + }; + const setTitle = (value: string) => { + title.value = value; + useDynamicTitle(); + }; + return { + title, + theme, + sideTheme, + showSettings, + topNav, + tagsView, + fixedHeader, + sidebarLogo, + dynamicTitle, + animationEnable, + dark, + changeSetting, + setTitle + }; }); export default useSettingsStore; -- Gitblit v1.9.3