| | |
| | | <template v-else-if="layout=='dock'"> |
| | | <header class="adminui-header"> |
| | | <div class="adminui-header-left"> |
| | | <div class="logo-bar"> |
| | | <img class="logo" src="img/logo.png"> |
| | | <span>{{ $CONFIG.APP_NAME }}</span> |
| | | <div class="logo-bar personalized-logo"> |
| | | <!-- <img class="logo" src="img/logo.png"> |
| | | <span>{{ $CONFIG.APP_NAME }}</span> --> |
| | | <img src="/img/initiallong.b9495273.png" class="img" style="width: 100%; height: 70%;padding-left: 8px;"> |
| | | </div> |
| | | </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> |
| | |
| | | |
| | | <!-- 默认布局 --> |
| | | <template v-else> |
| | | <div class="adminui-top-header"> |
| | | <div class="adminui-topheader-left"> |
| | | <img src="/img/initiallong.b9495273.png" class="img" style="width: 180px; height: 40px;"> |
| | | </div> |
| | | <div class="adminui-topheader-main"> |
| | | <div> |
| | | <Tags v-if="!ismobile && layoutTags"></Tags> |
| | | </div> |
| | | </div> |
| | | <div class="adminui-topheader-right"> |
| | | <Topbar> |
| | | <userbar></userbar> |
| | | </Topbar> |
| | | </div> |
| | | </div> |
| | | <section class="aminui-wrapper"> |
| | | <div v-if="!ismobile" class="aminui-side-split"> |
| | | <div class="aminui-side-split-top"> |
| | | <!-- <div class="aminui-side-split-top"> |
| | | <router-link :to="$CONFIG.DASHBOARD_URL"> |
| | | <img class="logo" :title="$CONFIG.APP_NAME" src="img/logo-r.png"> |
| | | </router-link> |
| | | </div> |
| | | </div> --> |
| | | <div class="adminui-side-split-scroll"> |
| | | <el-scrollbar> |
| | | <ul> |
| | |
| | | </div> |
| | | <div class="adminui-side-scroll"> |
| | | <el-scrollbar> |
| | | <el-menu :default-active="active" router :collapse="menuIsCollapse" :unique-opened="$CONFIG.MENU_UNIQUE_OPENED"> |
| | | <el-menu :default-active="active" router :collapse="menuIsCollapse" :unique-opened="$CONFIG.MENU_UNIQUE_OPENED" class="adminui-side-scrolul"> |
| | | <NavMenu :navMenus="nextMenu"></NavMenu> |
| | | </el-menu> |
| | | </el-scrollbar> |
| | | </div> |
| | | <div class="adminui-side-bottom" @click="$store.commit('TOGGLE_menuIsCollapse')"> |
| | | <!-- <div class="adminui-side-bottom" @click="$store.commit('TOGGLE_menuIsCollapse')"> |
| | | <el-icon><el-icon-expand v-if="menuIsCollapse"/><el-icon-fold v-else /></el-icon> |
| | | </div> |
| | | </div> --> |
| | | </div> |
| | | <Side-m v-if="ismobile"></Side-m> |
| | | <div class="aminui-body el-container"> |
| | | <Topbar> |
| | | <userbar></userbar> |
| | | </Topbar> |
| | | <Tags v-if="!ismobile && layoutTags"></Tags> |
| | | <div class="adminui-main" id="adminui-main"> |
| | | <router-view v-slot="{ Component }"> |
| | | <keep-alive :include="this.$store.state.keepAlive.keepLiveRoute"> |
| | |
| | | |
| | | <div class="main-maximize-exit" @click="exitMaximize"><el-icon><el-icon-close /></el-icon></div> |
| | | |
| | | <div class="layout-setting" @click="openSetting"><el-icon><el-icon-brush-filled /></el-icon></div> |
| | | <!-- <div class="layout-setting" @click="openSetting"><el-icon><el-icon-brush-filled /></el-icon></div> --> |
| | | |
| | | <el-drawer title="布局实时演示" v-model="settingDialog" :size="400" append-to-body destroy-on-close> |
| | | <setting></setting> |
| | |
| | | } |
| | | }, |
| | | methods: { |
| | | findRouteByPath(routes, targetPath) { |
| | | for (let i = 0; i < routes.length; i++) { |
| | | if (routes[i].path === targetPath) { |
| | | // 如果找到匹配的path,直接返回当前对象 |
| | | return routes[i]; |
| | | } |
| | | if (routes[i].children) { |
| | | // 如果当前对象有children,递归查找 |
| | | const found = this.findRouteByPath(routes[i].children, targetPath); |
| | | if (found) { |
| | | return found; |
| | | } |
| | | } |
| | | } |
| | | // 如果没有找到匹配的path,返回null |
| | | 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; |
| | | }, |