From f32a7105c38ee455c4b165d48651ef19fc6948db Mon Sep 17 00:00:00 2001 From: ahaos <8406649+lhailgl@user.noreply.gitee.com> Date: 星期三, 13 十二月 2023 18:35:55 +0800 Subject: [PATCH] !68 修复升级依赖带来的问题 * Merge remote-tracking branch 'origin/dev' into dev * 升级依赖 * Merge remote-tracking branch 'origin/ts' into ts * 升级依赖 * Merge branch 'dev' of gitee.com:JavaLionLi/plus-ui into ts * 升级依赖 * !61 fix: 删除重复环境变量ElUploadInstance * fix: 删除重复环境变量ElUploadInstance --- src/layout/components/Settings/index.vue | 98 ++++++++++++++++--------------------------------- 1 files changed, 32 insertions(+), 66 deletions(-) diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue index c748998..2a2e077 100644 --- a/src/layout/components/Settings/index.vue +++ b/src/layout/components/Settings/index.vue @@ -48,35 +48,35 @@ <div class="drawer-item"> <span>寮�鍚� TopNav</span> <span class="comp-style"> - <el-switch v-model="topNav" class="drawer-switch" /> + <el-switch v-model="settingsStore.topNav" class="drawer-switch" @change="topNavChange" /> </span> </div> <div class="drawer-item"> <span>寮�鍚� Tags-Views</span> <span class="comp-style"> - <el-switch v-model="tagsView" class="drawer-switch" /> + <el-switch v-model="settingsStore.tagsView" class="drawer-switch" /> </span> </div> <div class="drawer-item"> <span>鍥哄畾 Header</span> <span class="comp-style"> - <el-switch v-model="fixedHeader" class="drawer-switch" /> + <el-switch v-model="settingsStore.fixedHeader" class="drawer-switch" /> </span> </div> <div class="drawer-item"> <span>鏄剧ず Logo</span> <span class="comp-style"> - <el-switch v-model="sidebarLogo" class="drawer-switch" /> + <el-switch v-model="settingsStore.sidebarLogo" class="drawer-switch" /> </span> </div> <div class="drawer-item"> <span>鍔ㄦ�佹爣棰�</span> <span class="comp-style"> - <el-switch v-model="dynamicTitle" class="drawer-switch" /> + <el-switch v-model="settingsStore.dynamicTitle" class="drawer-switch" @change="dynamicTitleChange" /> </span> </div> @@ -93,8 +93,8 @@ import useSettingsStore from '@/store/modules/settings'; import usePermissionStore from '@/store/modules/permission'; import { handleThemeStyle } from '@/utils/theme'; -import { SettingTypeEnum } from '@/enums/SettingTypeEnum'; import { SideThemeEnum } from '@/enums/SideThemeEnum'; +import defaultSettings from '@/settings'; const { proxy } = getCurrentInstance() as ComponentInternalInstance; const appStore = useAppStore(); @@ -113,92 +113,58 @@ valueDark: 'dark', valueLight: 'light' }); +// 鍖归厤鑿滃崟棰滆壊 watch(isDark, () => { if (isDark.value) { - settingsStore.changeSetting({ key: SettingTypeEnum.SIDE_THEME, value: SideThemeEnum.DARK }); + settingsStore.sideTheme = SideThemeEnum.DARK; } else { - settingsStore.changeSetting({ key: SettingTypeEnum.SIDE_THEME, value: sideTheme.value }); + settingsStore.sideTheme = sideTheme.value; } }); const toggleDark = () => useToggle(isDark); -/** 鏄惁闇�瑕乼opNav */ -const topNav = computed({ - get: () => storeSettings.value.topNav, - set: (val) => { - settingsStore.changeSetting({ key: SettingTypeEnum.TOP_NAV, value: val }); - if (!val) { - appStore.toggleSideBarHide(false); - permissionStore.setSidebarRouters(permissionStore.defaultRoutes); - } +const topNavChange = (val) => { + if (!val) { + appStore.toggleSideBarHide(false); + permissionStore.setSidebarRouters(permissionStore.defaultRoutes); } -}); -/** 鏄惁闇�瑕乼agview */ -const tagsView = computed({ - get: () => storeSettings.value.tagsView, - set: (val) => { - settingsStore.changeSetting({ key: SettingTypeEnum.TAGS_VIEW, value: val }); - } -}); -/**鏄惁闇�瑕佸浐瀹氬ご閮� */ -const fixedHeader = computed({ - get: () => storeSettings.value.fixedHeader, - set: (val) => { - settingsStore.changeSetting({ key: SettingTypeEnum.FIXED_HEADER, value: val }); - } -}); -/**鏄惁闇�瑕佷晶杈规爮鐨刲ogo */ -const sidebarLogo = computed({ - get: () => storeSettings.value.sidebarLogo, - set: (val) => { - settingsStore.changeSetting({ key: SettingTypeEnum.SIDEBAR_LOGO, value: val }); - } -}); -/**鏄惁闇�瑕佷晶杈规爮鐨勫姩鎬佺綉椤电殑title */ -const dynamicTitle = computed({ - get: () => storeSettings.value.dynamicTitle, - set: (val) => { - settingsStore.changeSetting({ key: SettingTypeEnum.DYNAMIC_TITLE, value: val }); - // 鍔ㄦ�佽缃綉椤垫爣棰� - useDynamicTitle(); - } -}); +}; + +const dynamicTitleChange = () => { + // 鍔ㄦ�佽缃綉椤垫爣棰� + useDynamicTitle(); +}; const themeChange = (val: string) => { - settingsStore.changeSetting({ key: SettingTypeEnum.THEME, value: val }); - theme.value = val; - if (val) { - handleThemeStyle(val); - } + settingsStore.theme = val; + handleThemeStyle(val); }; const handleTheme = (val: string) => { sideTheme.value = val; if (isDark.value && val === SideThemeEnum.LIGHT) { // 鏆楅粦妯″紡棰滆壊涓嶅彉 - settingsStore.changeSetting({ key: SettingTypeEnum.SIDE_THEME, value: SideThemeEnum.DARK }); + settingsStore.sideTheme = SideThemeEnum.DARK; return; } - settingsStore.changeSetting({ key: SettingTypeEnum.SIDE_THEME, value: val }); + settingsStore.sideTheme = val; }; const saveSetting = () => { proxy?.$modal.loading('姝e湪淇濆瓨鍒版湰鍦帮紝璇风◢鍊�...'); - let layoutSetting = { - topNav: storeSettings.value.topNav, - tagsView: storeSettings.value.tagsView, - fixedHeader: storeSettings.value.fixedHeader, - sidebarLogo: storeSettings.value.sidebarLogo, - dynamicTitle: storeSettings.value.dynamicTitle, - sideTheme: storeSettings.value.sideTheme, - theme: storeSettings.value.theme - }; - localStorage.setItem('layout-setting', JSON.stringify(layoutSetting)); + const settings = useStorage<LayoutSetting>('layout-setting', defaultSettings); + settings.value.topNav = storeSettings.value.topNav; + settings.value.tagsView = storeSettings.value.tagsView; + settings.value.fixedHeader = storeSettings.value.fixedHeader; + settings.value.sidebarLogo = storeSettings.value.sidebarLogo; + settings.value.dynamicTitle = storeSettings.value.dynamicTitle; + settings.value.sideTheme = storeSettings.value.sideTheme; + settings.value.theme = storeSettings.value.theme; setTimeout(() => { proxy?.$modal.closeLoading(); }, 1000); }; const resetSetting = () => { proxy?.$modal.loading('姝e湪娓呴櫎璁剧疆缂撳瓨骞跺埛鏂帮紝璇风◢鍊�...'); - localStorage.removeItem('layout-setting'); + useStorage<any>('layout-setting', null).value = null; setTimeout('window.location.reload()', 1000); }; const openSetting = () => { -- Gitblit v1.9.3