From f75823de21e1f276bc50e0c96577bf017be1efa5 Mon Sep 17 00:00:00 2001 From: lxl <lixuliang_hd@126.com> Date: 星期四, 13 十月 2022 18:15:51 +0800 Subject: [PATCH] 三个树 --- src/components/navMenu.vue | 96 +++++++++++++++++++++++++++++++---------------- 1 files changed, 63 insertions(+), 33 deletions(-) diff --git a/src/components/navMenu.vue b/src/components/navMenu.vue index 29a68b1..d0bceb6 100644 --- a/src/components/navMenu.vue +++ b/src/components/navMenu.vue @@ -34,13 +34,13 @@ </template> <script> -import { logout } from "@/api/api"; -import { removeToken, getToken } from "@/utils/auth"; -import customElMenu from "../components/customElMenu.vue"; -import { queryMenuTree, updateMenuTree, queryMaxId } from "../api/api"; +import { logout } from '@/api/api'; +import { removeToken, getToken } from '@/utils/auth'; +import customElMenu from '../components/customElMenu.vue'; +import { queryMenuTree, updateMenuTree, queryMaxId } from '../api/api'; export default { - name: "navMenu", + name: 'navMenu', //import寮曞叆鐨勭粍浠堕渶瑕佹敞鍏ュ埌瀵硅薄涓墠鑳戒娇鐢� components: { customElMenu, @@ -50,10 +50,10 @@ oriData: [], //鍘熷鏍戞暟鎹� dirData: [], //el鏍戞暟鎹� newData: [], //鎷栧姩鍚庢暟鎹� - lang: "zh", - activeIndex: "/", + lang: 'zh', + activeIndex: '/', menuList: [], - editTitle: "", + editTitle: '', showPopover: false, showEditInfoWrapper: false, showEdit: false, @@ -61,13 +61,26 @@ editCatalogue: false, editUnit: false, itemdetail: {}, - formLabelWidth: "70px", + formLabelWidth: '70px', }; }, mounted() { this.getMenuTree(); }, - computed: {}, + computed: { + // 鎴戜滑浣跨敤璁$畻灞炴�ф潵鑾峰彇鍒板綋鍓嶇偣鍑荤殑鑿滃崟鐨勮矾鐢辫矾寰勶紝鐒跺悗璁剧疆default-active涓殑鍊� + // 浣垮緱鑿滃崟鍦ㄨ浇鍏ユ椂灏辫兘瀵瑰簲楂樹寒 + // activeIndex() { + // const route = this.$route; + // const { meta, path } = route; + // // if set path, the sidebar will highlight the path you set + // // 鍙互鍦ㄨ矾鐢遍厤缃枃浠朵腑璁剧疆鑷畾涔夌殑璺敱璺緞鍒癿eta.activeMenu灞炴�т腑锛屾潵鎺у埗鑿滃崟鑷畾涔夐珮浜樉绀� + // if (meta.activeMenu) { + // return meta.activeMenu; + // } + // return path; + // }, + }, methods: { getMenuTree() { //鑾峰彇鐩綍鏍戞渶澶D锛屾柊寤鸿妭鐐逛娇鐢� @@ -83,10 +96,10 @@ }); this.menuList = this.treeData(menuLists); } else { - alert("鏆傛棤鑿滃崟鏍忔暟鎹�"); + alert('鏆傛棤鑿滃崟鏍忔暟鎹�'); } } else { - console.log("鎺ュ彛鎶ラ敊"); + console.log('鎺ュ彛鎶ラ敊'); } }); }, @@ -97,62 +110,70 @@ return cloneData.filter((father) => { // 寰幆鎵�鏈夐」 let branchArr = cloneData.filter((child) => father.id == child.pid); // 瀵规瘮ID锛屽垎鍒笂涓嬬骇鑿滃崟锛屽苟杩斿洖鏁版嵁 - branchArr.length > 0 ? (father.children = branchArr) : ""; // 缁欑埗绾ф坊鍔犱竴涓猚hildren灞炴�э紝骞惰祴鍊� + branchArr.length > 0 ? (father.children = branchArr) : ''; // 缁欑埗绾ф坊鍔犱竴涓猚hildren灞炴�э紝骞惰祴鍊� // 灞炰簬鍚屼竴瀵硅薄闂锛屼緥濡傦細浠� a=b銆乧=1 锛岀劧鍚庡啀浠� b.c=c 锛� 閭d箞 a.c=b.c=c=1 锛涘悓鐞嗭紝鍚庣画浠� c.d=2 ,閭d箞 a.c.d 涔熸槸=2锛� // 鐢辨寰幆澶氭鍚庯紝灏辫兘褰㈡垚鐩稿簲鐨勬爲褰㈡暟鎹粨鏋� return father.pid == 1; // 杩斿洖涓�绾ц彍鍗� }); } else { - alert("鏆傛棤鑿滃崟鏍忔暟鎹�"); + alert('鏆傛棤鑿滃崟鏍忔暟鎹�'); } }, logOut() { - this.$confirm("纭鏄惁閫�鍑虹櫥褰�?", "鎻愮ず", { - confirmButtonText: "纭畾", - cancelButtonText: "鍙栨秷", - type: "warning", + this.$confirm('纭鏄惁閫�鍑虹櫥褰�?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning', }) .then(async () => { const data = await logout({ token: getToken() }); console.log(data); if (data.code != 200) { - return this.$message.error("閫�鍑虹櫥褰曞け璐�"); + return this.$message.error('閫�鍑虹櫥褰曞け璐�'); } removeToken(); - this.$router.push("/login"); + this.$router.push('/login'); this.$message({ - message: "閫�鍑虹櫥褰曟垚鍔�", - type: "success", + message: '閫�鍑虹櫥褰曟垚鍔�', + type: 'success', }); }) .catch(() => { this.$message({ - type: "info", - message: "宸插彇娑�", + type: 'info', + message: '宸插彇娑�', }); }); }, switchLang() { //褰撳墠en - if (this.lang == "en") { + if (this.lang == 'en') { //璇█鎹㈡垚zh - this.lang = "zh"; + this.lang = 'zh'; //鑿滃崟鎹负zh - this.$store.commit("changeLang", "zh"); + this.$store.commit('changeLang', 'zh'); //i18鎹㈡垚zh this.$i18n.locale = this.lang; } //褰撳墠zh else { - this.lang = "en"; + this.lang = 'en'; this.$i18n.locale = this.lang; - this.$store.commit("changeLang", "en"); //浼犻�掔偣鍑荤殑鑺傜偣 + this.$store.commit('changeLang', 'en'); //浼犻�掔偣鍑荤殑鑺傜偣 } }, handleselect(index, indexPath) { - if (index.indexOf("http") != -1) { - this.$router.push("/databaseMonitoring"); - this.$store.commit("getIframe", index); + if (Window.ws != null) { + Window.ws.close(); + Window.ws.onclose = () => { + console.log('鏈嶅姟鍣ㄥ叧闂�'); + }; + Window.ws = null; + } + + if (index.indexOf('http') != -1) { + this.$router.push('/databaseMonitoring'); + this.$store.commit('getIframe', index); } else if (isNaN(Number(index))) { this.$router.push(index); } @@ -160,9 +181,18 @@ }, watch: { $route() { - this.activeIndex = this.$route.path; + let str = this.$route.path; + if (str[0] == '/') { + this.activeIndex = str.slice(1); + } }, }, + created() { + let str = this.$route.path; + if (str[0] == '/') { + this.activeIndex = str.slice(1); + } + }, }; </script> <style lang="less" scoped> -- Gitblit v1.9.3