diff --git a/vue/src/config/index.js b/vue/src/config/index.js
index acb3cd4..f77b020 100644
--- a/vue/src/config/index.js
+++ b/vue/src/config/index.js
@@ -48,7 +48,7 @@ module.exports = {
//文件配置
file: {
//上传地址
- uploadUrl:'https://upload.qiniup.com',
+ uploadUrl: 'https://upload.qiniup.com',
//上传后的存储地址前缀
storePrefix: 'https://static.toesbieya.cn/',
@@ -57,6 +57,15 @@ module.exports = {
previewPrefix: isDev ? 'http://localhost:8012' : 'https://preview.toesbieya.cn',
},
+ //本地存储配置
+ storage: {
+ //键名前缀
+ keyPrefix: 'GCC-',
+
+ //读写时是否进行压缩的默认值
+ zip: !isDev
+ },
+
//省市地区json数据请求地址
regionDataUrl: `${contextPath}static/json/region-pca.json`
}
diff --git a/vue/src/layout/component/Aside/index.vue b/vue/src/layout/component/Aside/index.vue
index 7c33c51..e33d7c9 100644
--- a/vue/src/layout/component/Aside/index.vue
+++ b/vue/src/layout/component/Aside/index.vue
@@ -115,11 +115,14 @@ export default {
},
//添加或移除鼠标移动事件
- shouldBindMouseMoveEvent(v) {
- //尝试移除之前可能添加的事件
- window.removeEventListener('mousemove', this.moveEvent)
+ shouldBindMouseMoveEvent: {
+ immediate: true,
+ handler(v) {
+ //尝试移除之前可能添加的事件
+ window.removeEventListener('mousemove', this.moveEvent)
- v && window.addEventListener('mousemove', this.moveEvent)
+ v && window.addEventListener('mousemove', this.moveEvent)
+ }
}
},
diff --git a/vue/src/layout/component/Header/component/Navbar/component/SettingDrawer.vue b/vue/src/layout/component/Header/component/Navbar/component/SettingDrawer.vue
index 990b921..649c7b5 100644
--- a/vue/src/layout/component/Header/component/Navbar/component/SettingDrawer.vue
+++ b/vue/src/layout/component/Header/component/Navbar/component/SettingDrawer.vue
@@ -26,10 +26,6 @@
显示页头
-
- 使用多页签
-
-
显示返回顶部按钮
@@ -56,6 +52,20 @@
自动隐藏
+
+ 多页签设置
+
+ 启用
+
+
+
+ 启用快捷键切换
+
+
+
+ 持久化
+
+
@@ -111,7 +121,6 @@ export default {
},
page: {
showPageHeader: true,
- useTagsView: true,
showBackToTop: true
},
aside: {
@@ -120,6 +129,11 @@ export default {
collapse: false,
showParentOnCollapse: false,
autoHide: false
+ },
+ tagsView: {
+ enabled: true,
+ shortcut: true,
+ persistent: true
}
}
}
@@ -128,13 +142,12 @@ export default {
methods: {
//按照此处的设置项修改layout中的store
updateLayoutStore() {
- const {app, page, aside} = this.setting
+ const {app, page, aside, tagsView} = this.setting
appMutations.color(app.color)
appMutations.navMode(app.navMode)
pageMutations.showPageHeader(page.showPageHeader)
- tagsViewMutations.enabled(page.useTagsView)
pageMutations.showBackToTop(page.showBackToTop)
asideMutations.showLogo(aside.showLogo)
@@ -142,15 +155,18 @@ export default {
asideMutations.collapse(aside.collapse)
asideMutations.showParentOnCollapse(aside.showParentOnCollapse)
asideMutations.autoHide(aside.autoHide)
+
+ tagsViewMutations.enabled(tagsView.enabled)
+ tagsViewMutations.shortcut(tagsView.shortcut)
+ tagsViewMutations.persistent(tagsView.persistent)
},
//将layout中的store数据同步到此处的设置项
syncLayoutStore() {
- const {app, page, aside} = this.setting
+ const {app, page, aside, tagsView} = this.setting
app.color = appGetters.color
app.navMode = appGetters.navMode
page.showPageHeader = pageGetters.showPageHeader
- page.useTagsView = tagsViewGetters.enabled
page.showBackToTop = pageGetters.showBackToTop
aside.showLogo = asideGetters.showLogo
@@ -158,6 +174,10 @@ export default {
aside.collapse = asideGetters.collapse
aside.showParentOnCollapse = asideGetters.showParentOnCollapse
aside.autoHide = asideGetters.autoHide
+
+ tagsView.enabled = tagsViewGetters.enabled
+ tagsView.shortcut = tagsViewGetters.shortcut
+ tagsView.persistent = tagsViewGetters.persistent
},
//将此处的设置项保存到本地
saveSetting() {
@@ -168,49 +188,56 @@ export default {
changeThemeColor(v) {
isDev && client.changer.changeColor({newColors: forElementUI.getElementUISeries(v)})
appMutations.color(v)
- this.saveSetting()
},
changeNavMode(v) {
appMutations.navMode(v)
- this.saveSetting()
},
changePageShowHeader(v) {
pageMutations.showPageHeader(v)
- this.saveSetting()
- },
- changeTagsViewEnabled(v) {
- tagsViewMutations.enabled(v)
- this.saveSetting()
},
changePageBackToTop(v) {
pageMutations.showBackToTop(v)
- this.saveSetting()
},
changeAsideShowLogo(v) {
asideMutations.showLogo(v)
- this.saveSetting()
},
changeAsideUniqueOpen(v) {
asideMutations.uniqueOpen(v)
- this.saveSetting()
},
changeAsideCollapse(v) {
asideMutations.collapse(v)
- this.saveSetting()
},
changeAsideCollapseParent(v) {
asideMutations.showParentOnCollapse(v)
- this.saveSetting()
},
changeAsideAutoHide(v) {
asideMutations.autoHide(v)
- this.saveSetting()
+ },
+
+ changeTagsViewEnabled(v) {
+ tagsViewMutations.enabled(v)
+ },
+ changeTagsViewShortcut(v) {
+ tagsViewMutations.shortcut(v)
+ },
+ changeTagsViewPersistent(v) {
+ tagsViewMutations.persistent(v)
}
},
created() {
+ //增强所有以change开头的方法
+ for (const key of Object.keys(this)) {
+ if (!key.startsWith('change')) continue
+ const originMethod = this[key]
+ this[key] = (...arg) => {
+ originMethod.apply(this, arg)
+ this.saveSetting()
+ }
+ }
+
mergeObj(this.setting, getLocalPersonalSettings())
//由于数据结构可能发生变化,所以在合并后覆盖本地数据
diff --git a/vue/src/layout/component/Header/component/TagsView/index.vue b/vue/src/layout/component/Header/component/TagsView/index.vue
index 5d18ef8..eadfb56 100644
--- a/vue/src/layout/component/Header/component/TagsView/index.vue
+++ b/vue/src/layout/component/Header/component/TagsView/index.vue
@@ -1,6 +1,7 @@