diff --git a/web/src/pinia/modules/app.js b/web/src/pinia/modules/app.js index 8b322353..e0858cd5 100644 --- a/web/src/pinia/modules/app.js +++ b/web/src/pinia/modules/app.js @@ -99,6 +99,26 @@ export const useAppStore = defineStore('app', () => { config.transition_type = e } + const baseCoinfg = { + darkMode: 'auto', + primaryColor: '#3b82f6', + show_watermark: false, + grey: false, + weakness: false, + side_mode: 'normal', + showTabs: true, + transition_type: 'fade', + layout_side_width: 200, + layout_side_collapsed_width: 60, + layout_side_item_height: 40 + } + + const resetConfig = () => { + for (let baseCoinfgKey in baseCoinfg) { + config[baseCoinfgKey] = baseCoinfg[baseCoinfgKey] + } + } + // 监听色弱模式和灰色模式 watchEffect(() => { document.documentElement.classList.toggle('html-weakenss', config.weakness) @@ -128,6 +148,7 @@ export const useAppStore = defineStore('app', () => { toggleConfigSideItemHeight, toggleConfigWatermark, toggleSideMode, - toggleTransition + toggleTransition, + resetConfig } }) diff --git a/web/src/view/layout/setting/index.vue b/web/src/view/layout/setting/index.vue index 12a7f2aa..5bbd33cd 100644 --- a/web/src/view/layout/setting/index.vue +++ b/web/src/view/layout/setting/index.vue @@ -9,7 +9,7 @@
@@ -144,6 +144,8 @@ import { ElMessage } from 'element-plus' import { setSelfSetting } from '@/api/user' import Title from './title.vue' + import { watch } from 'vue'; + const appStore = useAppStore() const { config, device } = storeToRefs(appStore) defineOptions({ @@ -185,24 +187,24 @@ ] const saveConfig = async () => { - /*const input = document.createElement("textarea"); - input.value = JSON.stringify(config.value); - // 添加回车 - input.value = input.value.replace(/,/g, ",\n"); - document.body.appendChild(input); - input.select(); - document.execCommand("copy"); - document.body.removeChild(input); - ElMessage.success("复制成功, 请自行保存到本地文件中");*/ const res = await setSelfSetting(config.value) + console.log(config.value) if (res.code === 0) { localStorage.setItem('originSetting', JSON.stringify(config.value)) ElMessage.success('保存成功') - drawer.value = false } } const customColor = ref('') + + const resetConfig = () => { + appStore.resetConfig() + } + + + watch(config, async () => { + await saveConfig(); + }, { deep: true });