mirror of
				https://gitee.com/hhyykk/ipms-sjy.git
				synced 2025-10-31 02:08:43 +08:00 
			
		
		
		
	v3.5.0 系统布局配置支持动态标题开关
This commit is contained in:
		| @@ -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> | ||||
|   | ||||
| @@ -38,6 +38,11 @@ | ||||
|         </div> | ||||
|       </div> | ||||
|  | ||||
|       <div class="drawer-item"> | ||||
|         <span>动态标题</span> | ||||
|         <el-switch v-model="dynamicTitle" class="drawer-switch" /> | ||||
|       </div> | ||||
|  | ||||
|       <el-divider/> | ||||
|  | ||||
|       <h3 class="drawer-title">系统布局配置</h3> | ||||
| @@ -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}" | ||||
|           }` | ||||
|   | ||||
| @@ -72,8 +72,11 @@ Vue.prototype.msgInfo = function (msg) { | ||||
| // 全局组件挂载 | ||||
| Vue.component('Pagination', Pagination) | ||||
| Vue.component('RightToolbar', RightToolbar) | ||||
| // 头部标签插件 | ||||
| import VueMeta from 'vue-meta' | ||||
|  | ||||
| Vue.use(permission) | ||||
| Vue.use(VueMeta) | ||||
| // Vue.use(hljs.vuePlugin); | ||||
|  | ||||
| // bpmnProcessDesigner 需要引入 | ||||
|   | ||||
| @@ -12,6 +12,7 @@ const whiteList = ['/login', '/social-login',  '/auth-redirect', '/bind', '/regi | ||||
| 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: '/' }) | ||||
|   | ||||
| @@ -1,5 +1,4 @@ | ||||
| module.exports = { | ||||
|   title: '若依管理系统', | ||||
|  | ||||
|   /** | ||||
|    * 侧边栏主题 深色主题theme-dark,浅色主题theme-light | ||||
| @@ -31,6 +30,11 @@ module.exports = { | ||||
|    */ | ||||
|   sidebarLogo: true, | ||||
|  | ||||
|   /** | ||||
|    * 是否显示动态标题 | ||||
|    */ | ||||
|   dynamicTitle: false, | ||||
|  | ||||
|   /** | ||||
|    * @type {string | array} 'production' | ['production', 'development'] | ||||
|    * @description Need show err logs component. | ||||
|   | ||||
| @@ -1,17 +1,19 @@ | ||||
| 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 | ||||
|   } | ||||
| } | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 YunaiV
					YunaiV