From ea73cb1a2458e3964a97c43096e92a93fde31963 Mon Sep 17 00:00:00 2001 From: fanluyan <754122931@qq.com> Date: Thu, 28 Mar 2024 14:14:17 +0800 Subject: [PATCH] =?UTF-8?q?=E4=BC=98=E5=8C=96?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../components/parameterArea.vue | 18 ++++++++++++- .../components/blindMenuPermiss.vue | 27 ++++++++++++++++--- 2 files changed, 41 insertions(+), 4 deletions(-) diff --git a/src/views/realTimeMonitor/components/parameterArea.vue b/src/views/realTimeMonitor/components/parameterArea.vue index 35e8c9a..39e30b6 100644 --- a/src/views/realTimeMonitor/components/parameterArea.vue +++ b/src/views/realTimeMonitor/components/parameterArea.vue @@ -88,7 +88,11 @@ 关闭GPS - + 历史图片 { + map[button.key] = true; // 假设只要key存在,就显示按钮 + return map; + }, {}); + }, }, created() { this.roleUser = localStorage.getItem("role"); console.log("asdsaddddddddddddddddddddddddd", this.roleUser); this.btnShowList = JSON.parse(localStorage.getItem("btnPermission")); + this.menuList = JSON.parse(localStorage.getItem("menuPermission")); console.log(this.btnShowList); }, mounted() { @@ -278,6 +290,10 @@ export default { showButton(key) { return this.showButtonMap[key] || false; }, + //控制显示与隐藏 + showhisButton(key) { + return this.showButtonhisMap[key] || false; + }, //双击选中复制 handleDblClick(val) { // alert(val); diff --git a/src/views/system/roleManagement/components/blindMenuPermiss.vue b/src/views/system/roleManagement/components/blindMenuPermiss.vue index 7fc62a0..39c8534 100644 --- a/src/views/system/roleManagement/components/blindMenuPermiss.vue +++ b/src/views/system/roleManagement/components/blindMenuPermiss.vue @@ -79,6 +79,7 @@ export default { this.btnCheckOption = res.data.filter((item) => item.key.includes("Btn") ); + console.log(this.menuCheckOption, this.btnCheckOption); this.getRolePermission(); } else { this.$message.error(res.msg); @@ -95,9 +96,29 @@ export default { console.log(res); this.checkedIds = res.data; console.log(this.checkedIds); - this.checkedMenu = this.checkedIds.map((obj) => obj.resourceId); - this.checkedBtn = this.checkedIds.map((obj) => obj.resourceId); - console.log("我时查询到的选中的值", this.checkedIds); + + // 创建一个Set,以便快速检查id是否存在 + const menuOptionIds = new Set( + this.menuCheckOption.map((option) => option.id) + ); + + // 过滤资源数组,只保留那些其resourceId存在于menuOptionIds中的项 + const filteredResources = this.checkedIds.filter((resource) => + menuOptionIds.has(resource.resourceId) + ); + // 创建一个Set,以便快速检查id是否存在 + const btnOptionIds = new Set( + this.btnCheckOption.map((option) => option.id) + ); + + // 过滤资源数组,只保留那些其resourceId存在于menuOptionIds中的项 + const filteredBtnResources = this.checkedIds.filter((resource) => + btnOptionIds.has(resource.resourceId) + ); + console.log(filteredResources, filteredBtnResources); + this.checkedMenu = filteredResources.map((obj) => obj.resourceId); + this.checkedBtn = filteredBtnResources.map((obj) => obj.resourceId); + // console.log("我时查询到的选中的值", this.checkedIds); this.treeLoading = false; } else {