From a49ee2d4b23748b65e0f771c7be8281cd22dde75 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E9=99=88=E7=BA=A2=E4=B8=BD?= <1181930680@qq.com> Date: Sat, 12 Oct 2024 16:19:25 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E6=B0=B4=E5=8D=B0=E5=BC=80?= =?UTF-8?q?=E5=85=B3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/App.vue | 11 ++++++++--- src/hooks/setting/useProjectSetting.ts | 3 +++ src/layout/components/Header/ProjectSetting.vue | 17 ++++++++++++++++- src/settings/projectSetting.ts | 2 ++ src/store/modules/projectSetting.ts | 6 ++++++ 5 files changed, 35 insertions(+), 4 deletions(-) diff --git a/src/App.vue b/src/App.vue index 5d71f2a..f9a18ee 100644 --- a/src/App.vue +++ b/src/App.vue @@ -17,6 +17,7 @@ import { useLockscreenStore } from '@/store/modules/lockscreen'; import { useRoute } from 'vue-router'; import { PageEnum } from '@/enums/pageEnum'; + import { useProjectSetting } from '@/hooks/setting/useProjectSetting'; import Watermark from '@/utils/wartermark'; const route = useRoute(); @@ -26,7 +27,7 @@ const lockTime = computed(() => useLockscreen.lockTime); const zIndex = ref(3000); - + const {getIsWaterMark} = useProjectSetting(); const LoginName = PageEnum.BASE_LOGIN_NAME; let timer; @@ -50,8 +51,12 @@ }; onMounted(() => { - const waterText = import.meta.env.VITE_GLOB_APP_TITLE; - Watermark.set(waterText) + if(getIsWaterMark.value) { + const waterText = import.meta.env.VITE_GLOB_APP_TITLE; + Watermark.set(waterText) + } else { + Watermark.del() + } }); onUnmounted(() => { // document.removeEventListener('mousedown', timekeeping); diff --git a/src/hooks/setting/useProjectSetting.ts b/src/hooks/setting/useProjectSetting.ts index 027fe02..cd81f3e 100644 --- a/src/hooks/setting/useProjectSetting.ts +++ b/src/hooks/setting/useProjectSetting.ts @@ -18,6 +18,8 @@ export function useProjectSetting() { const getCrumbsSetting = computed(() => projectStore.crumbsSetting); + const getIsWaterMark = computed(() => projectStore.isWaterMark); + const getPermissionMode = computed(() => projectStore.permissionMode); const getShowFooter = computed(() => projectStore.showFooter); @@ -46,6 +48,7 @@ export function useProjectSetting() { getPageAnimateType, getMenuWidth, getMenuMinWidth, + getIsWaterMark, getIsProjectSetting, }; } diff --git a/src/layout/components/Header/ProjectSetting.vue b/src/layout/components/Header/ProjectSetting.vue index 5aa360c..3cd40ac 100644 --- a/src/layout/components/Header/ProjectSetting.vue +++ b/src/layout/components/Header/ProjectSetting.vue @@ -246,6 +246,12 @@ +
+
水印
+
+ +
+
@@ -294,7 +300,7 @@ import { animates as animateOptions } from '@/settings/animateSetting'; import { useDesignSetting } from '@/hooks/setting/useDesignSetting'; import colorTool from '@/utils/color'; - + import Watermark from '@/utils/wartermark'; defineProps({ title: { type: String, @@ -348,6 +354,15 @@ settingStore.menuSetting.mixMenu = false; } + function handleWaterChange(val){ + if(val) { + const waterText = import.meta.env.VITE_GLOB_APP_TITLE; + Watermark.set(waterText) + } else { + Watermark.del() + } + } + //主题色切换 function themeColorChange(color) { document.documentElement.style.setProperty('--el-color-primary', color); diff --git a/src/settings/projectSetting.ts b/src/settings/projectSetting.ts index bda3a60..bdd0351 100644 --- a/src/settings/projectSetting.ts +++ b/src/settings/projectSetting.ts @@ -58,5 +58,7 @@ const setting = { pageAnimateType: 'fade', //显示项目配置 isProjectSetting: true, + //显示水印 + isWaterMark:true }; export default setting; diff --git a/src/store/modules/projectSetting.ts b/src/store/modules/projectSetting.ts index 44f042a..50a0f55 100644 --- a/src/store/modules/projectSetting.ts +++ b/src/store/modules/projectSetting.ts @@ -22,6 +22,7 @@ const { isPageAnimate, pageAnimateType, isProjectSetting, + isWaterMark } = projectSetting; interface ProjectSettingState { @@ -37,6 +38,7 @@ interface ProjectSettingState { isPageAnimate: boolean; //是否开启路由动画 pageAnimateType: string; //路由动画类型 isProjectSetting: boolean; //显示项目配置 + isWaterMark:boolean //显示水印 } export const useProjectSettingStore = defineStore({ @@ -54,6 +56,7 @@ export const useProjectSettingStore = defineStore({ isPageAnimate, pageAnimateType, isProjectSetting, + isWaterMark }), getters: { getNavMode(): string { @@ -92,6 +95,9 @@ export const useProjectSettingStore = defineStore({ getIsProjectSetting(): boolean { return this.isProjectSetting; }, + getIsWaterMark(): boolean { + return this.isWaterMark; + }, }, actions: { setNavTheme(value: string): void {