From 890cd9ab8cfbd642c7240413a2f2f51b7f6f0fa5 Mon Sep 17 00:00:00 2001 From: licp <lichunping@guanfang.com.cn> Date: 星期四, 21 三月 2024 13:37:26 +0800 Subject: [PATCH] 完善下单 --- src/view/index.vue | 93 +++++++++++++++++++++++++++++++++------------- 1 files changed, 67 insertions(+), 26 deletions(-) diff --git a/src/view/index.vue b/src/view/index.vue index 40bd6df..04e57ba 100644 --- a/src/view/index.vue +++ b/src/view/index.vue @@ -12,11 +12,12 @@ height: 48px; display: flex; align-items: center; - padding: 0 30px; + padding: 0 24px; } .logo { width: 130px; + height: 40px; } .logo img { @@ -161,8 +162,7 @@ } .tag>.el-icon-s-unfold, - .el-icon-s-fold, - .el-icon-delete { + .el-icon-s-fold{ font-size: 16px; cursor: pointer; margin: 0 8px; @@ -210,6 +210,11 @@ .active_tab i { display: inline; color: #3A7BFA; + border-radius: 50%; + } + + .active_tab i:hover{ + background-color: rgba(0, 0, 0, 0.08); } .component_view { @@ -225,7 +230,7 @@ } .right_key_menu { - width: 120px; + width: 130px; position: absolute; top: 0; left: 0; @@ -244,7 +249,7 @@ } .right_key_menu li i { - margin-right: 14px; + margin-right: 10px; } .right_key_menu li:hover { @@ -264,7 +269,7 @@ <div class="all" @click="closeRightKey"> <div class="title"> <div class="logo"> - <!-- <img src="../../static/img/logo 1.png" /> --> + <img src="../../static/img/logo1.png" /> </div> <div class="label">LIMS瀹為獙瀹ょ鐞嗙郴缁�</div> <div class="user"> @@ -280,7 +285,7 @@ <i :class="a.i"></i> <div>{{a.v}}</div> </div> - <el-popover placement="right-start" trigger="click" v-if="a.self != true && getPower(a.p)"> + <el-popover ref="popoverName" placement="right-start" trigger="click" v-if="a.self != true && getPower(a.p)"> <div :class="`box ${activeBox == a.k ? 'active_box' : ''}`" slot="reference"> <i :class="a.i"></i> <div style="text-align: center;">{{ a.v }}</div> @@ -298,7 +303,6 @@ </div> </div> </el-popover> - </el-popover> </div> </div> <div class="right" :style="`width: calc(100% - ${leftOpen?'92':'0'}px);`"> @@ -311,7 +315,6 @@ <i class="el-icon-close" @click="removeTab(ai)" v-if="tabActive!=0"></i> </div> </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="com.k" v-show="com.k == tabActive" @@ -324,7 +327,9 @@ <el-col :span="24"> <el-card :body-style="{padding: '6px'}"> <ul> - <li style="color: red;" @click="removeTab(activeIndex)"><i class="el-icon-close"></i>鍏抽棴</li> + <li @click="removeTab(activeIndex)"><i class="el-icon-close"></i>鍏抽棴</li> + <li @click="allDel"><i class="el-icon-delete"></i>鍏抽棴鎵�鏈�</li> + <li @click="rightDel(activeIndex)"><i class="el-icon-d-arrow-right"></i>鍏抽棴鍙充晶椤电</li> <el-divider></el-divider> <li @click="refreshTable"><i class="el-icon-refresh"></i>鍒锋柊</li> </ul> @@ -345,7 +350,6 @@ const componentConfig = requireComponent(fileName); comObj[names] = componentConfig.default || componentConfig; }); - import menu from '../../static/js/menu.js'; import menus from '../../static/js/menu.js' import nullFace from '../view/404.vue' comObj['nullFace'] = nullFace @@ -359,12 +363,7 @@ activeBox: 0, activeP: 0, tabActive: 0, - tabs: [{ - k: 0, - v: "涓汉棣栭〉", - i: "font icon-a-Group1124", - u: "nullFace" - }], + tabs: [], upIndex: 0, activeIndex: 0, power: [] @@ -376,9 +375,36 @@ mounted() { this.userName = JSON.parse(localStorage.getItem("user")).name; this.power = JSON.parse(sessionStorage.getItem('power')) + this.tabs = JSON.parse(localStorage.getItem('tabs')) + if (this.tabs == undefined || this.tabs == null) { + this.tabs = [{ + k: 0, + v: "涓汉棣栭〉", + i: "font icon-a-Group1124", + u: "nullFace" + }] + } + this.tabActive = JSON.parse(localStorage.getItem('tabActive')) + if (this.tabActive == undefined || this.tabActive == null) { + this.tabActive = 0 + } + this.activeP = JSON.parse(localStorage.getItem('activeP')) + if (this.activeP == undefined || this.activeP == null) { + this.activeP = 0 + } + this.activeBox = JSON.parse(localStorage.getItem('activeBox')) + if (this.activeBox == undefined || this.activeBox == null) { + this.activeBox = 0 + } this.getPower() }, methods: { + saveClick(){ + localStorage.setItem('tabs', JSON.stringify(this.tabs)) + localStorage.setItem('tabActive', JSON.stringify(this.tabActive)) + localStorage.setItem('activeP', JSON.stringify(this.activeP)) + localStorage.setItem('activeBox', JSON.stringify(this.activeBox)) + }, addTab(ob, self) { this.activeBox = self == -1 ? ob.k : self this.activeP = ob.k; //0 @@ -390,16 +416,25 @@ } }); if (num == -1) { - if(ob.u == "") ob.u = "nullFace" + if (ob.u == "") ob.u = "nullFace" this.tabs.push(ob); } + this.$refs['popoverName'].forEach(a=>{ + a.doClose() + }) + this.saveClick() }, removeTab(index) { this.tabs.splice(index, 1); let data = this.tabs[this.tabs.length - 1] - this.activeP = data.k; - this.tabActive = data.k; - this.activeBox = data.k + this.upTabActive(data.k) + }, + rightDel(index){ + for (var i = this.tabs.length - 1; i > index; i--) { + this.tabs.splice(i, 1); + } + let data = this.tabs[this.tabs.length - 1] + this.upTabActive(data.k) }, allDel() { this.activeBox = 0 @@ -407,10 +442,11 @@ this.tabActive = 0 this.tabs = [{ k: 0, - v: " 棣栭〉", + v: "涓汉棣栭〉", i: "font icon-a-Group1124", - u: "index-index" + u: "nullFace" }] + this.saveClick() }, upTabActive(num) { this.tabActive = num; @@ -423,10 +459,15 @@ } }) } + this.saveClick() }, out() { sessionStorage.clear(); localStorage.removeItem("autoenter"); + localStorage.removeItem("tabs") + localStorage.removeItem("tabActive") + localStorage.removeItem("activeP") + localStorage.removeItem("activeBox") this.$router.push("/enter"); }, // 鍏抽棴鍙抽敭鑿滃崟 @@ -477,8 +518,8 @@ groupCount(g1, gs) { if (g1 == undefined) return 24 let count = 0 - gs.forEach(a=>{ - if(a.g == g1) count++ + gs.forEach(a => { + if (a.g == g1) count++ }) if (count > 4) return 8 if (count > 1) return 12 @@ -486,4 +527,4 @@ } } }; -</script> \ No newline at end of file +</script> -- Gitblit v1.9.3