Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
C
cocktail-party-server
项目
项目
详情
活动
周期分析
仓库
仓库
文件
提交
分支
标签
贡献者
图表
比较
统计图
议题
0
议题
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
CI / CD
CI / CD
流水线
作业
日程
统计图
Wiki
Wiki
代码片段
代码片段
成员
成员
折叠边栏
关闭边栏
活动
图像
聊天
创建新问题
作业
提交
问题看板
Open sidebar
cocktail-party
cocktail-party-server
Commits
db6d5d34
提交
db6d5d34
authored
5月 24, 2025
作者:
RuoYi
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
添加底部版权信息及开关
上级
9ceca3a6
隐藏空白字符变更
内嵌
并排
正在显示
6 个修改的文件
包含
79 行增加
和
7 行删除
+79
-7
AppMain.vue
ruoyi-ui/src/layout/components/AppMain.vue
+8
-2
index.vue
ruoyi-ui/src/layout/components/Copyright/index.vue
+36
-0
index.vue
ruoyi-ui/src/layout/components/Settings/index.vue
+18
-1
settings.js
ruoyi-ui/src/settings.js
+11
-1
settings.js
ruoyi-ui/src/store/modules/settings.js
+4
-2
vue.config.js
ruoyi-ui/vue.config.js
+2
-1
没有找到文件。
ruoyi-ui/src/layout/components/AppMain.vue
浏览文件 @
db6d5d34
...
...
@@ -6,15 +6,17 @@
</keep-alive>
</transition>
<iframe-toggle
/>
<copyright
/>
</section>
</
template
>
<
script
>
import
copyright
from
"./Copyright/index"
import
iframeToggle
from
"./IframeToggle/index"
export
default
{
name
:
'AppMain'
,
components
:
{
iframeToggle
},
components
:
{
iframeToggle
,
copyright
},
computed
:
{
cachedViews
()
{
return
this
.
$store
.
state
.
tagsView
.
cachedViews
...
...
@@ -33,7 +35,7 @@ export default {
},
methods
:
{
addIframe
()
{
const
{
name
}
=
this
.
$route
const
{
name
}
=
this
.
$route
if
(
name
&&
this
.
$route
.
meta
.
link
)
{
this
.
$store
.
dispatch
(
'tagsView/addIframeView'
,
this
.
$route
)
}
...
...
@@ -51,6 +53,10 @@ export default {
overflow
:
hidden
;
}
.app-main
:has
(
.copyright
)
{
padding-bottom
:
36px
;
}
.fixed-header
+
.app-main
{
padding-top
:
50px
;
}
...
...
ruoyi-ui/src/layout/components/Copyright/index.vue
0 → 100644
浏览文件 @
db6d5d34
<
template
>
<footer
v-if=
"visible"
class=
"copyright"
>
<span>
{{
content
}}
</span>
</footer>
</
template
>
<
script
>
export
default
{
computed
:
{
visible
()
{
return
this
.
$store
.
state
.
settings
.
footerVisible
},
content
()
{
return
this
.
$store
.
state
.
settings
.
footerContent
}
}
}
</
script
>
<
style
scoped
>
.copyright
{
position
:
fixed
;
bottom
:
0
;
left
:
0
;
right
:
0
;
height
:
36px
;
padding
:
10px
20px
;
text-align
:
right
;
background-color
:
#f8f8f8
;
color
:
#666
;
font-size
:
14px
;
border-top
:
1px
solid
#e7e7e7
;
z-index
:
999
;
}
</
style
>
\ No newline at end of file
ruoyi-ui/src/layout/components/Settings/index.vue
浏览文件 @
db6d5d34
<
template
>
<el-drawer
size=
"280px"
:visible=
"showSettings"
:with-header=
"false"
:append-to-body=
"true"
:before-close=
"closeSetting"
>
<el-drawer
size=
"280px"
:visible=
"showSettings"
:with-header=
"false"
:append-to-body=
"true"
:before-close=
"closeSetting"
:lock-scroll=
"false"
>
<div
class=
"drawer-container"
>
<div>
<div
class=
"setting-drawer-content"
>
...
...
@@ -69,6 +69,11 @@
<el-switch
v-model=
"dynamicTitle"
class=
"drawer-switch"
/>
</div>
<div
class=
"drawer-item"
>
<span>
底部版权
</span>
<el-switch
v-model=
"footerVisible"
class=
"drawer-switch"
/>
</div>
<el-divider/>
<el-button
size=
"small"
type=
"primary"
plain
icon=
"el-icon-document-add"
@
click=
"saveSetting"
>
保存配置
</el-button>
...
...
@@ -163,6 +168,17 @@ export default {
this
.
$store
.
dispatch
(
'settings/setTitle'
,
this
.
$store
.
state
.
settings
.
title
)
}
},
footerVisible
:
{
get
()
{
return
this
.
$store
.
state
.
settings
.
footerVisible
},
set
(
val
)
{
this
.
$store
.
dispatch
(
'settings/changeSetting'
,
{
key
:
'footerVisible'
,
value
:
val
})
}
}
},
methods
:
{
themeChange
(
val
)
{
...
...
@@ -196,6 +212,7 @@ export default {
"fixedHeader":
${
this
.
fixedHeader
}
,
"sidebarLogo":
${
this
.
sidebarLogo
}
,
"dynamicTitle":
${
this
.
dynamicTitle
}
,
"footerVisible":
${
this
.
footerVisible
}
,
"sideTheme":"
${
this
.
sideTheme
}
",
"theme":"
${
this
.
theme
}
"
}`
...
...
ruoyi-ui/src/settings.js
浏览文件 @
db6d5d34
...
...
@@ -42,5 +42,15 @@ module.exports = {
/**
* 是否显示动态标题
*/
dynamicTitle
:
false
dynamicTitle
:
false
,
/**
* 是否显示底部版权
*/
footerVisible
:
false
,
/**
* 底部版权文本内容
*/
footerContent
:
'Copyright © 2018-2025 RuoYi. All Rights Reserved.'
}
ruoyi-ui/src/store/modules/settings.js
浏览文件 @
db6d5d34
import
defaultSettings
from
'@/settings'
import
{
useDynamicTitle
}
from
'@/utils/dynamicTitle'
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'
))
||
''
const
state
=
{
...
...
@@ -14,7 +14,9 @@ const state = {
tagsIcon
:
storageSetting
.
tagsIcon
===
undefined
?
tagsIcon
:
storageSetting
.
tagsIcon
,
fixedHeader
:
storageSetting
.
fixedHeader
===
undefined
?
fixedHeader
:
storageSetting
.
fixedHeader
,
sidebarLogo
:
storageSetting
.
sidebarLogo
===
undefined
?
sidebarLogo
:
storageSetting
.
sidebarLogo
,
dynamicTitle
:
storageSetting
.
dynamicTitle
===
undefined
?
dynamicTitle
:
storageSetting
.
dynamicTitle
dynamicTitle
:
storageSetting
.
dynamicTitle
===
undefined
?
dynamicTitle
:
storageSetting
.
dynamicTitle
,
footerVisible
:
storageSetting
.
footerVisible
===
undefined
?
footerVisible
:
storageSetting
.
footerVisible
,
footerContent
:
footerContent
}
const
mutations
=
{
CHANGE_SETTING
:
(
state
,
{
key
,
value
})
=>
{
...
...
ruoyi-ui/vue.config.js
浏览文件 @
db6d5d34
...
...
@@ -9,7 +9,8 @@ const CompressionPlugin = require('compression-webpack-plugin')
const
name
=
process
.
env
.
VUE_APP_TITLE
||
'若依管理系统'
// 网页标题
const
baseUrl
=
'http://localhost:8080'
// 后端接口
// const baseUrl = 'http://localhost:8080' // 后端接口
const
baseUrl
=
'http://vue.ruoyi.vip/prod-api'
// 后端接口
const
port
=
process
.
env
.
port
||
process
.
env
.
npm_config_port
||
80
// 端口
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论