Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
jinli gu
RuoYi Vue
Commits
557672ba
"jetbrains:/idea/checkout/git" did not exist on "8a88f90367f22dc645ec711ebe9bf089dd357240"
Commit
557672ba
authored
Jun 10, 2021
by
RuoYi
Browse files
系统布局配置支持动态标题开关
parent
a3116cd2
Changes
11
Hide whitespace changes
Inline
Side-by-side
ruoyi-ui/.env.development
View file @
557672ba
# 页面标题
VUE_APP_TITLE = 若依管理系统
# 开发环境配置
ENV = 'development'
...
...
ruoyi-ui/.env.production
View file @
557672ba
# 页面标题
VUE_APP_TITLE = 若依管理系统
# 生产环境配置
ENV = 'production'
...
...
ruoyi-ui/.env.staging
View file @
557672ba
# 页面标题
VUE_APP_TITLE = 若依管理系统
NODE_ENV = production
# 测试环境配置
...
...
ruoyi-ui/package.json
View file @
557672ba
...
...
@@ -55,6 +55,7 @@
"vue"
:
"2.6.12"
,
"vue-count-to"
:
"1.0.13"
,
"vue-cropper"
:
"0.5.5"
,
"vue-meta"
:
"^2.4.0"
,
"vue-router"
:
"3.4.9"
,
"vuedraggable"
:
"2.24.3"
,
"vuex"
:
"3.6.0"
...
...
ruoyi-ui/src/App.vue
View file @
557672ba
...
...
@@ -6,6 +6,14 @@
<
script
>
export
default
{
name
:
'
App
'
name
:
'
App
'
,
metaInfo
()
{
return
{
title
:
this
.
$store
.
state
.
settings
.
dynamicTitle
&&
this
.
$store
.
state
.
settings
.
title
,
titleTemplate
:
title
=>
{
return
title
?
`
${
title
}
-
${
process
.
env
.
VUE_APP_TITLE
}
`
:
process
.
env
.
VUE_APP_TITLE
}
}
}
}
</
script
>
ruoyi-ui/src/layout/components/Settings/index.vue
View file @
557672ba
...
...
@@ -62,6 +62,11 @@
<el-switch
v-model=
"sidebarLogo"
class=
"drawer-switch"
/>
</div>
<div
class=
"drawer-item"
>
<span>
动态标题
</span>
<el-switch
v-model=
"dynamicTitle"
class=
"drawer-switch"
/>
</div>
<el-divider/>
<el-button
size=
"small"
type=
"primary"
plain
icon=
"el-icon-document-add"
@
click=
"saveSetting"
>
保存配置
</el-button>
...
...
@@ -129,6 +134,17 @@ export default {
})
}
},
dynamicTitle
:
{
get
()
{
return
this
.
$store
.
state
.
settings
.
dynamicTitle
},
set
(
val
)
{
this
.
$store
.
dispatch
(
'
settings/changeSetting
'
,
{
key
:
'
dynamicTitle
'
,
value
:
val
})
}
},
},
methods
:
{
themeChange
(
val
)
{
...
...
@@ -160,6 +176,7 @@ export default {
"tagsView":
${
this
.
tagsView
}
,
"fixedHeader":
${
this
.
fixedHeader
}
,
"sidebarLogo":
${
this
.
sidebarLogo
}
,
"dynamicTitle":
${
this
.
dynamicTitle
}
,
"sideTheme":"
${
this
.
sideTheme
}
",
"theme":"
${
this
.
theme
}
"
}`
...
...
ruoyi-ui/src/main.js
View file @
557672ba
...
...
@@ -20,6 +20,8 @@ import { parseTime, resetForm, addDateRange, selectDictLabel, selectDictLabels,
import
Pagination
from
"
@/components/Pagination
"
;
// 自定义表格工具扩展
import
RightToolbar
from
"
@/components/RightToolbar
"
// 头部标签插件
import
VueMeta
from
'
vue-meta
'
// 全局方法挂载
Vue
.
prototype
.
getDicts
=
getDicts
...
...
@@ -49,6 +51,7 @@ Vue.component('Pagination', Pagination)
Vue
.
component
(
'
RightToolbar
'
,
RightToolbar
)
Vue
.
use
(
permission
)
Vue
.
use
(
VueMeta
)
/**
* If you don't want to use mock-server
...
...
ruoyi-ui/src/permission.js
View file @
557672ba
...
...
@@ -12,6 +12,7 @@ const whiteList = ['/login', '/auth-redirect', '/bind', '/register']
router
.
beforeEach
((
to
,
from
,
next
)
=>
{
NProgress
.
start
()
if
(
getToken
())
{
to
.
meta
.
title
&&
store
.
dispatch
(
'
settings/setTitle
'
,
to
.
meta
.
title
)
/* has token*/
if
(
to
.
path
===
'
/login
'
)
{
next
({
path
:
'
/
'
})
...
...
ruoyi-ui/src/settings.js
View file @
557672ba
module
.
exports
=
{
title
:
'
若依管理系统
'
,
/**
* 侧边栏主题 深色主题theme-dark,浅色主题theme-light
*/
...
...
@@ -31,6 +29,11 @@ module.exports = {
*/
sidebarLogo
:
true
,
/**
* 是否显示动态标题
*/
dynamicTitle
:
false
,
/**
* @type {string | array} 'production' | ['production', 'development']
* @description Need show err logs component.
...
...
ruoyi-ui/src/store/modules/settings.js
View file @
557672ba
import
variables
from
'
@/assets/styles/element-variables.scss
'
import
defaultSettings
from
'
@/settings
'
const
{
sideTheme
,
showSettings
,
topNav
,
tagsView
,
fixedHeader
,
sidebarLogo
}
=
defaultSettings
const
{
sideTheme
,
showSettings
,
topNav
,
tagsView
,
fixedHeader
,
sidebarLogo
,
dynamicTitle
}
=
defaultSettings
const
storageSetting
=
JSON
.
parse
(
localStorage
.
getItem
(
'
layout-setting
'
))
||
''
const
state
=
{
title
:
''
,
theme
:
storageSetting
.
theme
||
variables
.
theme
,
sideTheme
:
storageSetting
.
sideTheme
||
sideTheme
,
showSettings
:
showSettings
,
topNav
:
storageSetting
.
topNav
===
undefined
?
topNav
:
storageSetting
.
topNav
,
tagsView
:
storageSetting
.
tagsView
===
undefined
?
tagsView
:
storageSetting
.
tagsView
,
fixedHeader
:
storageSetting
.
fixedHeader
===
undefined
?
fixedHeader
:
storageSetting
.
fixedHeader
,
sidebarLogo
:
storageSetting
.
sidebarLogo
===
undefined
?
sidebarLogo
:
storageSetting
.
sidebarLogo
sidebarLogo
:
storageSetting
.
sidebarLogo
===
undefined
?
sidebarLogo
:
storageSetting
.
sidebarLogo
,
dynamicTitle
:
storageSetting
.
dynamicTitle
===
undefined
?
dynamicTitle
:
storageSetting
.
dynamicTitle
}
const
mutations
=
{
CHANGE_SETTING
:
(
state
,
{
key
,
value
})
=>
{
...
...
@@ -22,8 +24,13 @@ const mutations = {
}
const
actions
=
{
// 修改布局设置
changeSetting
({
commit
},
data
)
{
commit
(
'
CHANGE_SETTING
'
,
data
)
},
// 设置网页标题
setTitle
({
commit
},
title
)
{
state
.
title
=
title
}
}
...
...
ruoyi-ui/vue.config.js
View file @
557672ba
'
use strict
'
const
path
=
require
(
'
path
'
)
const
defaultSettings
=
require
(
'
./src/settings.js
'
)
function
resolve
(
dir
)
{
return
path
.
join
(
__dirname
,
dir
)
}
const
name
=
defaultSettings
.
title
||
'
若依管理系统
'
// 标题
const
name
=
process
.
env
.
VUE_APP_TITLE
||
'
若依管理系统
'
//
网页
标题
const
port
=
process
.
env
.
port
||
process
.
env
.
npm_config_port
||
80
// 端口
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment