From 097f87317f70028d01feec7b2fd94f0b52c730fc Mon Sep 17 00:00:00 2001
From: lyt <1105290566@qq.com>
Date: Thu, 4 Feb 2021 18:13:03 +0800
Subject: [PATCH] =?UTF-8?q?'admin-21.02.04:=E5=A4=84=E7=90=86=E5=88=86?=
=?UTF-8?q?=E6=A0=8F=E5=B8=83=E5=B1=80=E8=8F=9C=E5=8D=95=E9=AB=98=E4=BA=AE?=
=?UTF-8?q?=E3=80=81=E7=BC=96=E5=86=99=E7=94=A8=E6=88=B7=E6=8C=89=E9=92=AE?=
=?UTF-8?q?=E6=9D=83=E9=99=90=E7=BB=84=E4=BB=B6'?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../src/views/components/auth/auth.vue | 29 ++++
.../src/views/components/auth/authAll.vue | 31 +++++
.../src/views/components/auth/auths.vue | 35 +++++
.../src/views/components/index.vue | 21 ---
.../src/views/layout/component/aside.vue | 6 +-
.../views/layout/component/columnsAside.vue | 31 ++++-
.../views/layout/navBars/breadcrumb/index.vue | 15 +--
.../layout/navBars/tagsView/tagsView.vue | 2 +
.../src/views/layout/navMenu/horizontal.vue | 35 ++++-
.../src/views/layout/routerView/iframes.vue | 5 +-
.../src/views/layout/routerView/parent.vue | 4 +-
.../src/views/limits/frontEnd/btn/index.vue | 124 +++++++++++++++++-
.../src/views/limits/frontEnd/page/index.vue | 18 ++-
.../src/views/login/component/account.vue | 3 +-
14 files changed, 309 insertions(+), 50 deletions(-)
create mode 100644 vue-admin-wonderful-next/src/views/components/auth/auth.vue
create mode 100644 vue-admin-wonderful-next/src/views/components/auth/authAll.vue
create mode 100644 vue-admin-wonderful-next/src/views/components/auth/auths.vue
delete mode 100644 vue-admin-wonderful-next/src/views/components/index.vue
diff --git a/vue-admin-wonderful-next/src/views/components/auth/auth.vue b/vue-admin-wonderful-next/src/views/components/auth/auth.vue
new file mode 100644
index 0000000..ab407a2
--- /dev/null
+++ b/vue-admin-wonderful-next/src/views/components/auth/auth.vue
@@ -0,0 +1,29 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/vue-admin-wonderful-next/src/views/components/auth/authAll.vue b/vue-admin-wonderful-next/src/views/components/auth/authAll.vue
new file mode 100644
index 0000000..cf11de1
--- /dev/null
+++ b/vue-admin-wonderful-next/src/views/components/auth/authAll.vue
@@ -0,0 +1,31 @@
+
+ {{getUserAuthList}}
+
+
+
+
+
+
\ No newline at end of file
diff --git a/vue-admin-wonderful-next/src/views/components/auth/auths.vue b/vue-admin-wonderful-next/src/views/components/auth/auths.vue
new file mode 100644
index 0000000..876fabd
--- /dev/null
+++ b/vue-admin-wonderful-next/src/views/components/auth/auths.vue
@@ -0,0 +1,35 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/vue-admin-wonderful-next/src/views/components/index.vue b/vue-admin-wonderful-next/src/views/components/index.vue
deleted file mode 100644
index b2b64fe..0000000
--- a/vue-admin-wonderful-next/src/views/components/index.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
- componentsIndex
-
-
-
-
-
\ No newline at end of file
diff --git a/vue-admin-wonderful-next/src/views/layout/component/aside.vue b/vue-admin-wonderful-next/src/views/layout/component/aside.vue
index 6fdaa6f..be4628a 100644
--- a/vue-admin-wonderful-next/src/views/layout/component/aside.vue
+++ b/vue-admin-wonderful-next/src/views/layout/component/aside.vue
@@ -108,6 +108,8 @@ export default {
// 监听路由的变化,动态赋值给菜单中
watch(store.state, (val) => {
if (val.routes.length === state.menuList.length) return false;
+ let { layout, isClassicSplitMenu } = val.themeConfig;
+ if (layout === "classic" && isClassicSplitMenu) return false;
setFilterRoutes();
});
// 页面加载前
@@ -119,8 +121,10 @@ export default {
});
proxy.mittBus.on("setSendClassicChildren", (res) => {
let { layout, isClassicSplitMenu } = store.state.themeConfig;
- if (layout === "classic" && isClassicSplitMenu)
+ if (layout === "classic" && isClassicSplitMenu) {
+ state.menuList = [];
state.menuList = res.children;
+ }
});
proxy.mittBus.on("getBreadcrumbIndexSetFilterRoutes", () => {
setFilterRoutes();
diff --git a/vue-admin-wonderful-next/src/views/layout/component/columnsAside.vue b/vue-admin-wonderful-next/src/views/layout/component/columnsAside.vue
index 4fa883b..a9f39cd 100644
--- a/vue-admin-wonderful-next/src/views/layout/component/columnsAside.vue
+++ b/vue-admin-wonderful-next/src/views/layout/component/columnsAside.vue
@@ -35,6 +35,7 @@ import {
onMounted,
nextTick,
getCurrentInstance,
+ watch,
} from "vue";
import { useRoute, useRouter, onBeforeRouteUpdate } from "vue-router";
import { useStore } from "/@/store/index.ts";
@@ -51,6 +52,7 @@ export default {
columnsAsideList: [],
liIndex: 0,
difference: 0,
+ routeSplit: [],
});
// 设置高亮样式
const setColumnsAsideStyle = computed(() => {
@@ -64,7 +66,7 @@ export default {
return "layout-columns-card-active";
});
// 设置菜单高亮位置移动
- const setColumnsAsideMove = (v: Object, k: number) => {
+ const setColumnsAsideMove = (k: number) => {
state.liIndex = k;
columnsAsideActiveRef.value.style.top = `${
columnsAsideOffsetTopRefs.value[k].offsetTop + state.difference
@@ -72,22 +74,22 @@ export default {
};
// 菜单高亮点击事件
const onColumnsAsideMenuClick = (v: Object, k: number) => {
- setColumnsAsideMove(v, k);
+ setColumnsAsideMove(k);
let { path, redirect } = v;
if (redirect) router.push(redirect);
else router.push(path);
};
// 设置高亮动态位置
- const onColumnsAsideDown = (v: Object, k: number) => {
+ const onColumnsAsideDown = (k: number) => {
nextTick(() => {
- setColumnsAsideMove(v, k);
+ setColumnsAsideMove(k);
});
};
// 设置/过滤路由(非静态路由/是否显示在菜单中)
const setFilterRoutes = () => {
state.columnsAsideList = filterRoutesFun(store.state.routes);
const resData = setSendChildren(route.path);
- onColumnsAsideDown(resData.item[0], resData.item[0].k);
+ onColumnsAsideDown(resData.item[0].k);
proxy.mittBus.emit("setSendColumnsChildren", resData);
};
// 传送当前子级数据到菜单中
@@ -114,12 +116,31 @@ export default {
return item;
});
};
+ // tagsView 点击时,根据路由查找下标 columnsAsideList,实现左侧菜单高亮
+ const setColumnsMenuHighlight = (path) => {
+ state.routeSplit = path.split("/");
+ state.routeSplit.shift();
+ const routeFirst = `/${state.routeSplit[0]}`;
+ const currentSplitRoute = state.columnsAsideList.find(
+ (v) => v.path === routeFirst
+ );
+ // 延迟拿值,防止取不到
+ setTimeout(() => {
+ onColumnsAsideDown(currentSplitRoute.k);
+ }, 0);
+ };
+ // 监听路由的变化,动态赋值给菜单中
+ watch(store.state, (val) => {
+ if (val.routes.length === state.columnsAsideList.length) return false;
+ setFilterRoutes();
+ });
// 页面加载时
onMounted(() => {
setFilterRoutes();
});
// 路由更新时
onBeforeRouteUpdate((to) => {
+ setColumnsMenuHighlight(to.path);
proxy.mittBus.emit("setSendColumnsChildren", setSendChildren(to.path));
});
return {
diff --git a/vue-admin-wonderful-next/src/views/layout/navBars/breadcrumb/index.vue b/vue-admin-wonderful-next/src/views/layout/navBars/breadcrumb/index.vue
index 199192c..2de6c35 100644
--- a/vue-admin-wonderful-next/src/views/layout/navBars/breadcrumb/index.vue
+++ b/vue-admin-wonderful-next/src/views/layout/navBars/breadcrumb/index.vue
@@ -15,8 +15,9 @@ import {
onMounted,
onUnmounted,
getCurrentInstance,
+ watch,
} from "vue";
-import { useRoute, onBeforeRouteUpdate } from "vue-router";
+import { useRoute } from "vue-router";
import { useStore } from "/@/store/index.ts";
import Breadcrumb from "/@/views/layout/navBars/breadcrumb/breadcrumb.vue";
import User from "/@/views/layout/navBars/breadcrumb/user.vue";
@@ -95,6 +96,11 @@ export default {
});
return currentData;
};
+ // 监听路由的变化,动态赋值给菜单中
+ watch(store.state, (val) => {
+ if (val.routes.length === state.menuList.length) return false;
+ setFilterRoutes();
+ });
// 页面加载时
onMounted(() => {
setFilterRoutes();
@@ -106,13 +112,6 @@ export default {
onUnmounted(() => {
proxy.mittBus.off("getBreadcrumbIndexSetFilterRoutes");
});
- // 路由更新时
- onBeforeRouteUpdate((to) => {
- proxy.mittBus.emit(
- "setSendClassicChildren",
- setSendClassicChildren(to.path)
- );
- });
return {
getThemeConfig,
setIsShowLogo,
diff --git a/vue-admin-wonderful-next/src/views/layout/navBars/tagsView/tagsView.vue b/vue-admin-wonderful-next/src/views/layout/navBars/tagsView/tagsView.vue
index 0d1fc53..8f53106 100644
--- a/vue-admin-wonderful-next/src/views/layout/navBars/tagsView/tagsView.vue
+++ b/vue-admin-wonderful-next/src/views/layout/navBars/tagsView/tagsView.vue
@@ -81,6 +81,7 @@ export default {
};
// 获取 vuex 中的 tagsViewRoutes 列表
const getTagsViewRoutes = () => {
+ state.routePath = route.path;
state.tagsViewList = [];
removeSession("tagsViewList");
state.tagsViewRoutesList = store.state.tagsViewRoutes;
@@ -185,6 +186,7 @@ export default {
};
// 当前的 tagsView 项点击时
const onTagsClick = (v: object, k: number) => {
+ state.routePath = v.path;
state.tagsRefsIndex = k;
router.push(v.path);
};
diff --git a/vue-admin-wonderful-next/src/views/layout/navMenu/horizontal.vue b/vue-admin-wonderful-next/src/views/layout/navMenu/horizontal.vue
index 69fa4d4..5f2e8c5 100644
--- a/vue-admin-wonderful-next/src/views/layout/navMenu/horizontal.vue
+++ b/vue-admin-wonderful-next/src/views/layout/navMenu/horizontal.vue
@@ -1,7 +1,8 @@