App.vue 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839
  1. <template>
  2. <el-config-provider :locale="locale" :size="size">
  3. <!-- 开启水印 -->
  4. <el-watermark
  5. v-if="watermarkEnabled"
  6. :content="defaultSettings.watermarkContent"
  7. :font="{ color: fontColor }"
  8. class="wh-full"
  9. >
  10. <router-view />
  11. </el-watermark>
  12. <!-- 关闭水印 -->
  13. <router-view v-else />
  14. <Waves v-if="userStore.user.notice" />
  15. </el-config-provider>
  16. </template>
  17. <script lang="ts" setup>
  18. import { useAppStore, useSettingsStore } from "@/store";
  19. import defaultSettings from "@/settings";
  20. import { ThemeEnum } from "@/enums/ThemeEnum";
  21. import { useUserStore } from "@/store";
  22. const userStore = useUserStore();
  23. const appStore = useAppStore();
  24. const settingsStore = useSettingsStore();
  25. const locale = computed(() => appStore.locale);
  26. const size = computed(
  27. () => appStore.size as "default" | "small" | "large" | undefined
  28. );
  29. const watermarkEnabled = computed(() => settingsStore.watermarkEnabled);
  30. console.log("测试提交新分支");
  31. // 明亮/暗黑主题水印字体颜色适配
  32. const fontColor = computed(() => {
  33. return settingsStore.theme === ThemeEnum.DARK
  34. ? "rgba(255, 255, 255, .15)"
  35. : "rgba(0, 0, 0, .15)";
  36. });
  37. </script>