diff --git a/index.html b/index.html index 8f1e665..f0bdb4b 100644 --- a/index.html +++ b/index.html @@ -16,11 +16,18 @@ enabled. Please enable it to continue. + + diff --git a/src/config/index.ts b/src/config/index.ts index 9bd9cd7..9a44282 100644 --- a/src/config/index.ts +++ b/src/config/index.ts @@ -11,11 +11,13 @@ export default { REQUEST_CACHE: false, //语言 LANG: 'zh-cn', + //主题风格 浅色:light | 深色:dark | 跟随系统:follow + DARK: 'light', //TokenName TOKEN_NAME: "Authorization", //Token前缀,注意最后有个空格,如不需要需设置空字符串 TOKEN_PREFIX: "Bearer ", - //布局 默认:default | 通栏:header | 经典:menu | 功能坞:dock + //布局 分栏:column | 通栏:header | 经典:menu | 功能坞:dock //dock将关闭标签和面包屑栏 - APP_LAYOUT: 'header', + APP_LAYOUT: 'column', } diff --git a/src/layout/components/dialog.vue b/src/layout/components/dialog.vue new file mode 100644 index 0000000..2dd905f --- /dev/null +++ b/src/layout/components/dialog.vue @@ -0,0 +1,11 @@ + + + + + diff --git a/src/layout/components/search.vue b/src/layout/components/search.vue index 1dfba96..db8ac90 100644 --- a/src/layout/components/search.vue +++ b/src/layout/components/search.vue @@ -36,8 +36,6 @@ let menu = ref([]) let result = ref([]) let history = ref([]) -console.log(searchText) - onMounted(() => { history.value = tools.data.get("SEARCH_HISTORY") || [] const menuTree = tools.data.get("MENU"); diff --git a/src/layout/components/setting.vue b/src/layout/components/setting.vue index 1c3c412..73c8b6d 100644 --- a/src/layout/components/setting.vue +++ b/src/layout/components/setting.vue @@ -1,10 +1,13 @@ @@ -50,10 +53,10 @@ let layout = ref(tools.data.get('APP_LAYOUT') || store.state.global.layout); let menuIsCollapse = ref(store.state.global.menuIsCollapse); let layoutTags = ref(store.state.global.layoutTags); let lang = ref(tools.data.get('APP_LANG') || config.LANG); -let dark = ref(tools.data.get('APP_DARK') || false); +let dark = ref(localStorage.getItem('APP_DARK') || config.DARK,); let colorList = ref(['#409EFF', '#009688', '#536dfe', '#ff5c93', '#c62f2f', '#fd726d']); let colorPrimary = ref(tools.data.get('APP_COLOR') || '#409EFF'); -let weakMode = ref(tools.data.get('APP_WEAK') || false) +let weakMode = ref(localStorage.getItem('APP_WEAK') || false) watch(layout, (val) => { tools.data.set("APP_LAYOUT", val); @@ -68,23 +71,13 @@ watch(layoutTags, () => { store.commit("TOGGLE_layoutTags") }) -watch(dark, (val) => { - if (val) { - document.documentElement.classList.add("dark") - tools.data.set("APP_DARK", val) - } else { - document.documentElement.classList.remove("dark") - tools.data.remove("APP_DARK") - } -}) - watch(weakMode, (val) => { if (val) { document.documentElement.classList.add("weak") - tools.data.set("APP_WEAK", val) + localStorage.setItem("APP_WEAK", val) } else { document.documentElement.classList.remove("weak") - tools.data.remove("APP_WEAK") + localStorage.removeItem("APP_WEAK") } }) @@ -107,7 +100,30 @@ watch(colorPrimary, (val) => { } tools.data.set("APP_COLOR", val); }) + +function themeClick(val) { + if (val == 'dark') { + document.documentElement.classList.add("dark") + localStorage.setItem("APP_DARK", val) + } else if(val == 'light') { + document.documentElement.classList.remove("dark") + localStorage.setItem("APP_DARK", val) + } else { + const systemTheme = window.matchMedia('(prefers-color-scheme: dark)') + if (systemTheme.matches) { + document.documentElement.classList.add("dark") + }else { + document.documentElement.classList.remove("dark") + } + localStorage.setItem("APP_DARK", val) + } + dark.value = val +} - diff --git a/src/layout/index.vue b/src/layout/index.vue index 8bb00ab..67576fa 100644 --- a/src/layout/index.vue +++ b/src/layout/index.vue @@ -60,19 +60,12 @@