From 47c1de01c0ef2808f9895d1f52bcd885eeeab12a Mon Sep 17 00:00:00 2001
From: toesbieya <1647775459@qq.com>
Date: Sat, 29 Aug 2020 17:47:12 +0800
Subject: [PATCH] =?UTF-8?q?Layout=E5=B0=BD=E5=8F=AF=E8=83=BD=E5=9C=B0?=
=?UTF-8?q?=E4=B8=8D=E4=BD=BF=E7=94=A8vuex=EF=BC=88=E9=99=A4=E6=9C=AA?=
=?UTF-8?q?=E8=AF=BB=E6=B6=88=E6=81=AF=E3=80=81=E7=94=A8=E6=88=B7=E4=BF=A1?=
=?UTF-8?q?=E6=81=AF=EF=BC=89=20=E8=B7=AF=E7=94=B1=E5=AE=88=E5=8D=AB?=
=?UTF-8?q?=E4=BB=A3=E7=A0=81=E5=88=86=E7=A6=BB=20=E4=BF=AE=E5=A4=8D?=
=?UTF-8?q?=E5=A4=9A=E9=A1=B5=E7=AD=BE=E4=B8=AD=E5=85=B3=E9=97=AD=E5=85=A8?=
=?UTF-8?q?=E9=83=A8=E6=97=B6=E9=A1=B5=E9=9D=A2=E6=9C=AA=E5=88=B7=E6=96=B0?=
=?UTF-8?q?=E7=9A=84=E9=97=AE=E9=A2=98?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
vue/src/layout/component/Header.vue | 11 +-
vue/src/layout/component/Main/index.vue | 17 +--
.../component/Navbar/component/RootMenu.vue | 15 +++
.../Navbar/component/SettingDrawer.vue | 11 +-
vue/src/layout/component/Navbar/index.vue | 14 +-
vue/src/layout/component/Sidebar/index.vue | 17 ++-
vue/src/layout/component/TagsView/index.vue | 53 ++++----
vue/src/layout/index.vue | 15 ++-
vue/src/layout/mixin/actionOnSelectMenu.js | 3 +-
.../layout/mixin/decideRouterTransition.js | 3 +-
vue/src/layout/mixin/resize.js | 5 +-
vue/src/layout/store/iframe.js | 35 +++++
vue/src/layout/store/main.js | 66 +++++++++
.../{store/module => layout/store}/setting.js | 62 ++++-----
vue/src/layout/store/tagsView.js | 85 ++++++++++++
vue/src/router/guard/avoidReuse.js | 16 +++
vue/src/router/guard/iframe.js | 24 ++++
vue/src/router/guard/index.js | 13 ++
vue/src/router/guard/nprogress.js | 17 +++
vue/src/router/guard/security.js | 43 ++++++
vue/src/router/guard/setInfo.js | 20 +++
vue/src/router/index.js | 125 +-----------------
vue/src/store/module/app.js | 10 --
vue/src/store/module/iframe.js | 38 ------
vue/src/store/module/resource.js | 48 +------
vue/src/store/module/tagsView.js | 82 ------------
vue/src/store/module/user.js | 3 +-
vue/src/util/index.js | 2 +-
vue/src/util/observable.js | 36 +++++
vue/src/util/route.js | 7 +-
vue/src/view/app/login/index.vue | 5 +-
31 files changed, 501 insertions(+), 400 deletions(-)
create mode 100644 vue/src/layout/store/iframe.js
create mode 100644 vue/src/layout/store/main.js
rename vue/src/{store/module => layout/store}/setting.js (54%)
create mode 100644 vue/src/layout/store/tagsView.js
create mode 100644 vue/src/router/guard/avoidReuse.js
create mode 100644 vue/src/router/guard/iframe.js
create mode 100644 vue/src/router/guard/index.js
create mode 100644 vue/src/router/guard/nprogress.js
create mode 100644 vue/src/router/guard/security.js
create mode 100644 vue/src/router/guard/setInfo.js
delete mode 100644 vue/src/store/module/iframe.js
delete mode 100644 vue/src/store/module/tagsView.js
create mode 100644 vue/src/util/observable.js
diff --git a/vue/src/layout/component/Header.vue b/vue/src/layout/component/Header.vue
index b765e1f..eff1df1 100644
--- a/vue/src/layout/component/Header.vue
+++ b/vue/src/layout/component/Header.vue
@@ -1,7 +1,9 @@
diff --git a/vue/src/layout/component/Navbar/component/RootMenu.vue b/vue/src/layout/component/Navbar/component/RootMenu.vue
index e850f8a..7a97206 100644
--- a/vue/src/layout/component/Navbar/component/RootMenu.vue
+++ b/vue/src/layout/component/Navbar/component/RootMenu.vue
@@ -4,6 +4,7 @@
*/
import ClickOutside from 'element-ui/lib/utils/clickoutside'
import actionOnSelectMenuMixin from "@/layout/mixin/actionOnSelectMenu"
+import {mutations as mainMutations} from "@/layout/store/main"
export default {
name: "RootMenu",
@@ -145,6 +146,20 @@ export default {
}
},
+ watch: {
+ $route: {
+ immediate: true,
+ handler(to) {
+ const {path, matched} = to
+ //使用/redirect跳转 或 无匹配路由 时跳过
+ if (path.startsWith('/redirect') || matched.length === 0) {
+ return
+ }
+ mainMutations.activeRootMenu(matched[0].path || '/')
+ }
+ }
+ },
+
mounted() {
this.setChildrenWidth()
diff --git a/vue/src/layout/component/Navbar/component/SettingDrawer.vue b/vue/src/layout/component/Navbar/component/SettingDrawer.vue
index caf1908..201dbd9 100644
--- a/vue/src/layout/component/Navbar/component/SettingDrawer.vue
+++ b/vue/src/layout/component/Navbar/component/SettingDrawer.vue
@@ -18,11 +18,12 @@