| | |
| | | padding: 20px 0; |
| | | transition: .3s; |
| | | overflow-y: auto; |
| | | user-select: none; |
| | | } |
| | | |
| | | .left::-webkit-scrollbar { |
| | | width: 0px; |
| | | } |
| | | |
| | | .left::-webkit-scrollbar-thumb { |
| | | background-color: transparent; |
| | | border-radius: 3px; |
| | | } |
| | | |
| | | .left .box { |
| | |
| | | } |
| | | |
| | | .left .box i { |
| | | font-size: 32px; |
| | | margin-bottom: 8px; |
| | | font-size: 28px; |
| | | margin-bottom: 4px; |
| | | } |
| | | |
| | | .left .box div { |
| | |
| | | user-select: none; |
| | | flex-shrink: 0; |
| | | } |
| | | |
| | | .tab:hover{ |
| | | color: #3A7BFA; |
| | | } |
| | | |
| | | .tab i { |
| | | font-size: 12px; |
| | |
| | | width: 100%; |
| | | height: 100%; |
| | | } |
| | | |
| | | .right_key_menu { |
| | | width: 120px; |
| | | position: absolute; |
| | | top: 0; |
| | | left: 0; |
| | | display: none; |
| | | z-index: 999; |
| | | } |
| | | |
| | | .right_key_menu li { |
| | | list-style-type: none; |
| | | padding: 5px 0; |
| | | padding-left: 10px; |
| | | font-size: 0.9rem; |
| | | transition: .5s; |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .right_key_menu li i{ |
| | | margin-right: 20px; |
| | | } |
| | | |
| | | .right_key_menu li:hover { |
| | | background-color: #dedede; |
| | | } |
| | | </style> |
| | | <style></style> |
| | | <template> |
| | | <div class="all"> |
| | | <div class="all" @click="closeRightKey"> |
| | | <div class="title"> |
| | | <div class="logo"> |
| | | <!-- <img src="../../static/img/logo 1.png" /> --> |
| | |
| | | <i :class="`${leftOpen?'el-icon-s-unfold':'el-icon-s-fold'}`" @click="leftOpen = !leftOpen"></i> |
| | | <div class="tabs"> |
| | | <div :class="`tab ${tabActive == a.k ? 'active_tab' : ''}`" v-for="(a, ai) in tabs" :key="ai" |
| | | @click="upTabActive(a.k)"> |
| | | @click="upTabActive(a.k)" @contextmenu.prevent="rightKeyMenu(ai, $event)"> |
| | | {{ a.v }} |
| | | <i class="el-icon-close" @click="removeTab(ai)" v-if="tabActive!=0"></i> |
| | | </div> |
| | |
| | | <i class="el-icon-delete" @click="allDel" title="删除所有标签页"></i> |
| | | </div> |
| | | <div class="component_view"> |
| | | <component class="com_index" v-for="(com, index) in tabs" :is="com.u" :key="upIndex + '|' + index" |
| | | v-show="com.k == tabActive"> |
| | | <component class="com_index" v-for="(com, index) in tabs" :is="com.u" :key="index" |
| | | v-show="com.k == tabActive" :ref="`com-${com.k}`"> |
| | | </component> |
| | | </div> |
| | | </div> |
| | | <!-- 右键菜单 --> |
| | | <div class="right_key_menu"> |
| | | <el-col :span="24"> |
| | | <el-card :body-style="{padding: '6px 0'}"> |
| | | <ul> |
| | | <li style="color: red;" @click="removeTab(activeIndex)"><i class="el-icon-close"></i>关闭</li> |
| | | <el-divider></el-divider> |
| | | <li @click="refreshTable"><i class="el-icon-refresh"></i>刷新</li> |
| | | </ul> |
| | | </el-card> |
| | | </el-col> |
| | | </div> |
| | | </div> |
| | | </template> |
| | |
| | | menu: [{ |
| | | k: 0, |
| | | v: "首页", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | self: true, |
| | | c: [{ |
| | | k: 0, |
| | | v: "首页", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | u: "index-index" |
| | | }] |
| | | }, |
| | | { |
| | | k: 2, |
| | | v: "数据上报", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | self: true, |
| | | c: [{ |
| | | k: 2, |
| | | v: "数据上报", |
| | | i: "font icon-shouye", |
| | | u: "index-index" |
| | | i: "font icon-a-Group1124", |
| | | u: "data-reporting" |
| | | }] |
| | | }, |
| | | { |
| | | k: 3, |
| | | v: "数据统计", |
| | | i: "font icon-shouye", |
| | | self: true, |
| | | i: "font icon-a-Group1124", |
| | | c: [{ |
| | | k: 3, |
| | | v: "数据统计", |
| | | i: "font icon-shouye", |
| | | k: 9, |
| | | v: "项目数据统计", |
| | | i: "font icon-a-Group1124", |
| | | u: "index-index" |
| | | },{ |
| | | k: 10, |
| | | v: "员工数据统计", |
| | | i: "font icon-a-Group1124", |
| | | u: "index-index" |
| | | }] |
| | | }, |
| | | { |
| | | k: 5, |
| | | v: "进粉上报", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | self: true, |
| | | c: [{ |
| | | k: 5, |
| | | v: "进粉上报", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | u: "index-index" |
| | | }] |
| | | }, |
| | | { |
| | | k: 6, |
| | | v: "财务上报", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | self: true, |
| | | c: [{ |
| | | k: 6, |
| | | v: "财务上报", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | u: "index-index" |
| | | }] |
| | | }, |
| | | { |
| | | k: 7, |
| | | v: "角色管理", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | self: true, |
| | | c: [{ |
| | | k: 7, |
| | | v: "角色管理", |
| | | i: "font icon-shouye", |
| | | u: "index-index" |
| | | i: "font icon-a-Group1124", |
| | | u: "role-manage" |
| | | }] |
| | | }, |
| | | { |
| | | k: 4, |
| | | v: "数据字典", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | c: [{ |
| | | k: 4, |
| | | v: "客户管理", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | u: "" |
| | | }, |
| | | { |
| | | k: 5, |
| | | v: "病种管理", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | u: "" |
| | | } |
| | | ] |
| | |
| | | { |
| | | k: 8, |
| | | v: "人员管理", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | self: true, |
| | | c: [{ |
| | | k: 8, |
| | | v: "人员管理", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | u: "person-manage" |
| | | }] |
| | | } |
| | |
| | | tabs: [{ |
| | | k: 0, |
| | | v: "首页", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | u: "index-index" |
| | | }], |
| | | upIndex: 0 |
| | | upIndex: 0, |
| | | activeIndex: 0 |
| | | }; |
| | | }, |
| | | created() {}, |
| | |
| | | this.tabs = [{ |
| | | k: 0, |
| | | v: " 首页", |
| | | i: "font icon-shouye", |
| | | i: "font icon-a-Group1124", |
| | | u: "index-index" |
| | | }] |
| | | }, |
| | |
| | | sessionStorage.clear(); |
| | | localStorage.removeItem("autoenter"); |
| | | this.$router.push("/enter"); |
| | | }, |
| | | // 关闭右键菜单 |
| | | closeRightKey() { |
| | | $('.right_key_menu').css({ |
| | | 'display': 'none' |
| | | }) |
| | | }, |
| | | // 右键菜单 |
| | | rightKeyMenu(id, e) { |
| | | if (id == 0) return |
| | | this.activeIndex = id |
| | | var x = e.clientX + 'px' |
| | | var y = e.clientY + 'px' |
| | | $('.right_key_menu').css({ |
| | | 'top': y, |
| | | 'left': x, |
| | | 'display': 'block' |
| | | }) |
| | | }, |
| | | // 刷新表格内容 |
| | | refreshTable(){ |
| | | var thing = this.tabs.splice(this.activeIndex, 1) |
| | | setTimeout(()=>{ |
| | | this.tabs.splice(this.activeIndex, 0, thing[0]) |
| | | }, 0) |
| | | } |
| | | } |
| | | }; |