diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue
index 442c185..2ab1b81 100644
--- a/src/layout/components/AppMain.vue
+++ b/src/layout/components/AppMain.vue
@@ -8,10 +8,12 @@
+
+
+
\ No newline at end of file
diff --git a/src/layout/components/Settings/index.vue b/src/layout/components/Settings/index.vue
index 1eb9529..a709e50 100644
--- a/src/layout/components/Settings/index.vue
+++ b/src/layout/components/Settings/index.vue
@@ -1,5 +1,5 @@
-
+
主题风格设置
@@ -77,6 +77,13 @@
+
+ 底部版权
+
+
+
+
+
保存配置
@@ -133,6 +140,7 @@ function saveSetting() {
"fixedHeader": storeSettings.value.fixedHeader,
"sidebarLogo": storeSettings.value.sidebarLogo,
"dynamicTitle": storeSettings.value.dynamicTitle,
+ "footerVisible": storeSettings.value.footerVisible,
"sideTheme": storeSettings.value.sideTheme,
"theme": storeSettings.value.theme
}
diff --git a/src/layout/components/TagsView/index.vue b/src/layout/components/TagsView/index.vue
index 38e32d5..6ffd914 100644
--- a/src/layout/components/TagsView/index.vue
+++ b/src/layout/components/TagsView/index.vue
@@ -12,7 +12,7 @@
@click.middle="!isAffix(tag) ? closeSelectedTag(tag) : ''"
@contextmenu.prevent="openMenu(tag, $event)"
>
-
+
{{ tag.title }}
diff --git a/src/settings.js b/src/settings.js
index 77b78a2..9d5d78d 100644
--- a/src/settings.js
+++ b/src/settings.js
@@ -42,5 +42,16 @@ export default {
/**
* 是否显示动态标题
*/
- dynamicTitle: false
+ dynamicTitle: false,
+
+ /**
+ * 是否显示底部版权
+ */
+ footerVisible: false,
+
+ /**
+ * 底部版权文本内容
+ */
+ footerContent: 'Copyright © 2018-2025 RuoYi. All Rights Reserved.'
}
+
diff --git a/src/store/modules/settings.js b/src/store/modules/settings.js
index f69aaa5..e2aa210 100644
--- a/src/store/modules/settings.js
+++ b/src/store/modules/settings.js
@@ -5,7 +5,7 @@ import { useDynamicTitle } from '@/utils/dynamicTitle'
const isDark = useDark()
const toggleDark = useToggle(isDark)
-const { sideTheme, showSettings, topNav, tagsView, tagsIcon, fixedHeader, sidebarLogo, dynamicTitle } = defaultSettings
+const { sideTheme, showSettings, topNav, tagsView, tagsIcon, fixedHeader, sidebarLogo, dynamicTitle, footerVisible, footerContent } = defaultSettings
const storageSetting = JSON.parse(localStorage.getItem('layout-setting')) || ''
@@ -23,6 +23,8 @@ const useSettingsStore = defineStore(
fixedHeader: storageSetting.fixedHeader === undefined ? fixedHeader : storageSetting.fixedHeader,
sidebarLogo: storageSetting.sidebarLogo === undefined ? sidebarLogo : storageSetting.sidebarLogo,
dynamicTitle: storageSetting.dynamicTitle === undefined ? dynamicTitle : storageSetting.dynamicTitle,
+ footerVisible: storageSetting.footerVisible === undefined ? footerVisible : storageSetting.footerVisible,
+ footerContent: footerContent,
isDark: isDark.value
}),
actions: {