From 0893453647466cd27bb54fe08a2531f33f569e69 Mon Sep 17 00:00:00 2001 From: 黄何裕 <1053952480@qq.com> Date: 星期二, 16 七月 2024 17:38:40 +0800 Subject: [PATCH] 工单阈值样式修改 --- src/layout/components/Sidebar/SidebarItem.vue | 92 +++++++++++++++++++++++++++++----------------- 1 files changed, 58 insertions(+), 34 deletions(-) diff --git a/src/layout/components/Sidebar/SidebarItem.vue b/src/layout/components/Sidebar/SidebarItem.vue index 82ba407..058d557 100644 --- a/src/layout/components/Sidebar/SidebarItem.vue +++ b/src/layout/components/Sidebar/SidebarItem.vue @@ -1,16 +1,40 @@ <template> <div v-if="!item.hidden"> - <template v-if="hasOneShowingChild(item.children,item) && (!onlyOneChild.children||onlyOneChild.noShowingChildren)&&!item.alwaysShow"> - <app-link v-if="onlyOneChild.meta" :to="resolvePath(onlyOneChild.path, onlyOneChild.query)"> - <el-menu-item :index="resolvePath(onlyOneChild.path)" :class="{'submenu-title-noDropdown':!isNest}"> - <item :icon="onlyOneChild.meta.icon||(item.meta&&item.meta.icon)" :title="onlyOneChild.meta.title" /> + <template + v-if=" + hasOneShowingChild(item.children, item) && + (!onlyOneChild.children || onlyOneChild.noShowingChildren) && + !item.alwaysShow + " + > + <app-link + v-if="onlyOneChild.meta" + :to="resolvePath(onlyOneChild.path, onlyOneChild.query)" + > + <el-menu-item + :index="resolvePath(onlyOneChild.path)" + :class="{ 'submenu-title-noDropdown': !isNest }" + > + <item + :icon="onlyOneChild.meta.icon || (item.meta && item.meta.icon)" + :title="onlyOneChild.meta.title" + /> </el-menu-item> </app-link> </template> - <el-submenu v-else ref="subMenu" :index="resolvePath(item.path)" popper-append-to-body> + <el-submenu + v-else + ref="subMenu" + :index="resolvePath(item.path)" + popper-append-to-body + > <template slot="title"> - <item v-if="item.meta" :icon="item.meta && item.meta.icon" :title="item.meta.title" /> + <item + v-if="item.meta" + :icon="item.meta && item.meta.icon" + :title="item.meta.title" + /> </template> <sidebar-item v-for="(child, index) in item.children" @@ -25,76 +49,76 @@ </template> <script> -import path from 'path' -import { isExternal } from '@/utils/validate' -import Item from './Item' -import AppLink from './Link' -import FixiOSBug from './FixiOSBug' +import path from "path"; +import { isExternal } from "@/utils/validate"; +import Item from "./Item"; +import AppLink from "./Link"; +import FixiOSBug from "./FixiOSBug"; export default { - name: 'SidebarItem', + name: "SidebarItem", components: { Item, AppLink }, mixins: [FixiOSBug], props: { // route object item: { type: Object, - required: true + required: true, }, isNest: { type: Boolean, - default: false + default: false, }, basePath: { type: String, - default: '' - } + default: "", + }, }, data() { - this.onlyOneChild = null - return {} + this.onlyOneChild = null; + return {}; }, methods: { hasOneShowingChild(children = [], parent) { if (!children) { children = []; } - const showingChildren = children.filter(item => { + const showingChildren = children.filter((item) => { if (item.hidden) { - return false + return false; } else { // Temp set(will be used if only has one showing child) - this.onlyOneChild = item - return true + this.onlyOneChild = item; + return true; } - }) + }); // When there is only one child router, the child router is displayed by default if (showingChildren.length === 1) { - return true + return true; } // Show parent if there are no child router to display if (showingChildren.length === 0) { - this.onlyOneChild = { ... parent, path: '', noShowingChildren: true } - return true + this.onlyOneChild = { ...parent, path: "", noShowingChildren: true }; + return true; } - return false + return false; }, resolvePath(routePath, routeQuery) { if (isExternal(routePath)) { - return routePath + return routePath; } if (isExternal(this.basePath)) { - return this.basePath + return this.basePath; } if (routeQuery) { let query = JSON.parse(routeQuery); - return { path: path.resolve(this.basePath, routePath), query: query } + return { path: path.resolve(this.basePath, routePath), query: query }; } - return path.resolve(this.basePath, routePath) - } - } -} + return path.resolve(this.basePath, routePath); + }, + }, +}; </script> -- Gitblit v1.8.0