|
@@ -80,6 +80,9 @@ const routesToMenu = [
|
|
|
}
|
|
|
];
|
|
|
|
|
|
+import { mapMutations } from "vuex";
|
|
|
+import { UPDATE_CURRENT_PATHS } from "../../store/currentPaths";
|
|
|
+
|
|
|
export default {
|
|
|
name: "HomeSide",
|
|
|
data() {
|
|
@@ -97,6 +100,7 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
methods: {
|
|
|
+ ...mapMutations([UPDATE_CURRENT_PATHS]),
|
|
|
async getUserPrivileges(groupCode) {
|
|
|
var url = CORE_API + "/rolePrivilege/getUserPrivileges";
|
|
|
const params = new URLSearchParams();
|
|
@@ -112,6 +116,21 @@ export default {
|
|
|
return this.menuList.filter(
|
|
|
m => m.parentId === menu1.id && m.ext1 === "menu"
|
|
|
);
|
|
|
+ },
|
|
|
+ updatePath() {
|
|
|
+ let currentPaths = [];
|
|
|
+ let part = this.menuList.find(v => v.ext5 === this.$route.path);
|
|
|
+ if (!part) {
|
|
|
+ this.UPDATE_CURRENT_PATHS([]);
|
|
|
+ return;
|
|
|
+ }
|
|
|
+ currentPaths.unshift(part.name);
|
|
|
+ while (this.menuList.find(v => v.id === part.parentId)) {
|
|
|
+ part = this.menuList.find(v => v.id === part.parentId);
|
|
|
+ currentPaths.unshift(part.name);
|
|
|
+ }
|
|
|
+ console.log(currentPaths);
|
|
|
+ this.UPDATE_CURRENT_PATHS(currentPaths);
|
|
|
}
|
|
|
},
|
|
|
async created() {
|
|
@@ -119,6 +138,12 @@ export default {
|
|
|
const groupCode = this.group && this.group.groupCode;
|
|
|
if (groupCode) {
|
|
|
this.menuList = await this.getUserPrivileges(groupCode);
|
|
|
+ this.updatePath();
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ $route() {
|
|
|
+ this.updatePath();
|
|
|
}
|
|
|
}
|
|
|
};
|