From b01346e041ffa205d69fddffa8c6f78cbeb307af Mon Sep 17 00:00:00 2001 From: WX <1377869194@qq.com> Date: 星期五, 11 八月 2023 10:57:48 +0800 Subject: [PATCH] 修改风场 --- src/views/menus.vue | 82 ++++++++++++++++++++++++++++++++++++++++- 1 files changed, 80 insertions(+), 2 deletions(-) diff --git a/src/views/menus.vue b/src/views/menus.vue index 4a56c63..2871c8a 100644 --- a/src/views/menus.vue +++ b/src/views/menus.vue @@ -24,10 +24,25 @@ class="menus_btn_c_list" v-for="(v, j) in item.child" :key="j" - @click="setMenuChildClick(v)" + @click.stop="setMenuChildClick(v)" :class="{ child_Menu_Options: childMenuOptions == v.id }" > {{ v.name }} + <div + class="menus_btn_c_list_chlid" + v-if="v.child" + v-show="childMenuOptions == v.id" + > + <div + class="menus_btn_c_list_chlid_list" + v-for="(e, k) in v.child" + :key="k" + :class="{ child_Menu_Options: checkMenuChildFlag == e.id }" + @click.stop="setMenuTreeChildClick(e)" + > + {{ e.name }} + </div> + </div> </div> </div> </div> @@ -41,7 +56,7 @@ export default { setup(props, { emit }) { const checkMenuFlag = ref("f1"); - + let checkMenuChildFlag = ref(""); let menuOptions = ref([]); let childMenuOptions = ref(""); const setMenuClick = (res) => { @@ -52,6 +67,13 @@ childMenuOptions.value = null; emit("menusData", { id: null, isActive: false }); menuTool.clearLeftTools(res); + } + if (checkMenuChildFlag.value != null) { + if (checkMenuChildFlag.value[0] == res.id[0]) { + checkMenuChildFlag.value = null; + // emit("menusData", { id: null, isActive: false }); + // menuTool.clearLeftTools(res); + } } } res.isActive = false; @@ -65,11 +87,36 @@ }; const setMenuChildClick = (res) => { if (childMenuOptions.value && childMenuOptions.value == res.id) { + if (checkMenuChildFlag.value != null) { + if (checkMenuChildFlag.value[0] == res.id[0]) { + checkMenuChildFlag.value = null; + emit("menusData", { id: null, isActive: false }); + menuTool.clearLeftTools(res); + } + } childMenuOptions.value = null; menuTool.clearLeftTools(res); res.isActive = false; } else { + if (checkMenuChildFlag.value) { + checkMenuChildFlag.value = null; + emit("menusData", { id: null, isActive: false }); + menuTool.clearLeftTools(res); + } childMenuOptions.value = res.id; + menuTool.leftTools(res); + res.isActive = true; + } + emit("menusData", res); + }; + const setMenuTreeChildClick = (res) => { + if (checkMenuChildFlag.value && checkMenuChildFlag.value == res.id) { + checkMenuChildFlag.value = null; + + menuTool.clearLeftTools(res); + res.isActive = false; + } else { + checkMenuChildFlag.value = res.id; menuTool.leftTools(res); res.isActive = true; } @@ -84,6 +131,8 @@ childMenuOptions, setMenuClick, setMenuChildClick, + checkMenuChildFlag, + setMenuTreeChildClick, }; }, }; @@ -150,6 +199,35 @@ line-height: 64px; border-radius: 5px; padding: 0 12px; + position: relative; + .menus_btn_c_list_chlid { + position: absolute; + width: 280px; + // height: 200px; + background: url("../assets/img/sj.png") no-repeat center; + background-size: 100% 100%; + right: -320px; + top: 50%; + transform: translateY(-50%); + padding: 43px 42px 52px 56px; + box-sizing: border-box; + .menus_btn_c_list_chlid_list { + width: 100%; + font-size: 30px; + font-family: JLinXin; + font-weight: 600; + color: #ffffff; + white-space: nowrap; + cursor: pointer; + line-height: 64px; + border-radius: 5px; + text-align: center; + // padding: 0 12px; + } + .menus_btn_c_list_chlid_list:hover { + background: rgba(0, 6, 80, 0.4); + } + } } .menus_btn_c_list:hover { background: rgba(0, 6, 80, 0.4); -- Gitblit v1.9.3