From 7d59e8e2c727dd49d9552a8febc2af47c5b95a69 Mon Sep 17 00:00:00 2001 From: lzhe <lzhe@example.com> Date: 星期四, 26 九月 2024 15:26:47 +0800 Subject: [PATCH] 1 --- src/layout/index.vue | 34 +++++++++++++++++++++++++++++++++- 1 files changed, 33 insertions(+), 1 deletions(-) diff --git a/src/layout/index.vue b/src/layout/index.vue index 6449135..0265cae 100644 --- a/src/layout/index.vue +++ b/src/layout/index.vue @@ -104,7 +104,7 @@ </div> <div class="adminui-header-right"> <div v-if="!ismobile" class="adminui-header-menu"> - <el-menu mode="horizontal" :default-active="active" router background-color="#222b45" text-color="#fff" active-text-color="var(--el-color-primary)"> + <el-menu mode="horizontal" @select="handleSelect" :default-active="active" background-color="#222b45" text-color="#fff" active-text-color="var(--el-color-primary)"> <NavMenu :navMenus="menu"></NavMenu> </el-menu> </div> @@ -267,6 +267,38 @@ } }, methods: { + findRouteByPath(routes, targetPath) { + for (let i = 0; i < routes.length; i++) { + if (routes[i].path === targetPath) { + // 濡傛灉鎵惧埌鍖归厤鐨刾ath锛岀洿鎺ヨ繑鍥炲綋鍓嶅璞� + return routes[i]; + } + if (routes[i].children) { + // 濡傛灉褰撳墠瀵硅薄鏈塩hildren锛岄�掑綊鏌ユ壘 + const found = this.findRouteByPath(routes[i].children, targetPath); + if (found) { + return found; + } + } + } + // 濡傛灉娌℃湁鎵惧埌鍖归厤鐨刾ath锛岃繑鍥瀗ull + return null; + }, + handleSelect(key, keyPath,index,routeResult) { + var MENU = this.$TOOL.data.get("MENU"); + var foundRoute = this.findRouteByPath(MENU, key); + //http://116.63.148.72:8080/xxl-job-admin + var TOKEN = this.$TOOL.cookie.get("TOKEN"); + if(key == "/myiframe/urlPath") { //浠诲姟璋冨害 + this.$router.push({path: '/myiframe/urlPath',query:{name: foundRoute.name,src:foundRoute.origin}}); + return; + } + if(foundRoute.name != "鏁板瓧鐪嬫澘") { + this.$router.push({path: key}); + }else { + window.open(key + `?token=${TOKEN}`,'_blank'); + } + }, openSetting(){ this.settingDialog = true; }, -- Gitblit v1.9.3