From 20287c50804869cbb5e4af5da1e2153e14dcdc93 Mon Sep 17 00:00:00 2001 From: wanghao Date: Fri, 25 Aug 2023 00:06:24 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9C=8D=E5=8A=A1=E7=AB=AFwebsiteConfigDTO?= =?UTF-8?q?=E5=A2=9E=E5=8A=A0favicon=E3=80=81=E7=BD=91=E9=A1=B5=E6=A0=87?= =?UTF-8?q?=E9=A2=98=E3=80=81=E5=85=AC=E5=AE=89=E9=83=A8=E5=A4=87=E6=A1=88?= =?UTF-8?q?=E7=BC=96=E5=8F=B7=E4=B8=89=E4=B8=AA=E5=AD=97=E6=AE=B5=EF=BC=8C?= =?UTF-8?q?=E5=8D=9A=E5=AE=A2=E5=89=8D=E7=AB=AF=E6=94=AF=E6=8C=81=E5=8A=A8?= =?UTF-8?q?=E6=80=81=E8=8E=B7=E5=8F=96=E8=BF=99=E4=B8=89=E4=B8=AA=E5=AD=97?= =?UTF-8?q?=E6=AE=B5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../aurora/model/dto/WebsiteConfigDTO.java | 12 +++++++++ aurora-vue/aurora-blog/src/App.vue | 25 ++++++++++++++++++- .../aurora-blog/src/components/Footer.vue | 12 ++++++--- 3 files changed, 45 insertions(+), 4 deletions(-) diff --git a/aurora-springboot/src/main/java/com/aurora/model/dto/WebsiteConfigDTO.java b/aurora-springboot/src/main/java/com/aurora/model/dto/WebsiteConfigDTO.java index d769401..d1a348c 100644 --- a/aurora-springboot/src/main/java/com/aurora/model/dto/WebsiteConfigDTO.java +++ b/aurora-springboot/src/main/java/com/aurora/model/dto/WebsiteConfigDTO.java @@ -68,4 +68,16 @@ public class WebsiteConfigDTO { private String alipayQRCode; + private String favicon; + + /** + * 网页标题 + */ + private String websiteTitle; + + /** + * 公安部备案编号 + */ + private String gonganBeianNumber; + } diff --git a/aurora-vue/aurora-blog/src/App.vue b/aurora-vue/aurora-blog/src/App.vue index f2715d4..8c1a94d 100644 --- a/aurora-vue/aurora-blog/src/App.vue +++ b/aurora-vue/aurora-blog/src/App.vue @@ -99,6 +99,7 @@ export default defineComponent({ appStore.categoryCount = data.data.categoryCount appStore.tagCount = data.data.tagCount appStore.websiteConfig = data.data.websiteConfigDTO + initFavicon(data.data.websiteConfigDTO.favicon) }) } const copyEventHandler = (event: any) => { @@ -130,8 +131,30 @@ export default defineComponent({ }, 10) } } + const initFavicon = (faviconUrl: string) => { + if (!faviconUrl) { + return + } + // 获取 head 标签 + var head = document.getElementsByTagName('head')[0]; + // 获取当前 favicon 元素 + var favicon = document.querySelector("link[rel*='icon']") || document.createElement('link'); + // Cast favicon to HTMLLinkElement + var faviconLink = favicon as HTMLLinkElement; + + faviconLink.type = 'image/x-icon'; + faviconLink.rel = 'shortcut icon'; + + // 设置新的 favicon 地址 + faviconLink.href = faviconUrl; + + // 如果当前 head 标签中不存在 favicon 元素,则将新的 favicon 添加到 head 标签中 + if (!document.querySelector("link[rel*='icon']")) { + head.appendChild(faviconLink); + } + } return { - title: metaStore.title, + title: computed(() => appStore.websiteConfig.websiteTitle) || metaStore.title, theme: computed(() => appStore.themeConfig.theme), headerImage: computed(() => { return { diff --git a/aurora-vue/aurora-blog/src/components/Footer.vue b/aurora-vue/aurora-blog/src/components/Footer.vue index e1c42dd..b6a6b9a 100644 --- a/aurora-vue/aurora-blog/src/components/Footer.vue +++ b/aurora-vue/aurora-blog/src/components/Footer.vue @@ -6,11 +6,17 @@