From 95db84d44298bf695b843d7555d671a41595c814 Mon Sep 17 00:00:00 2001
From: WX <1377869194@qq.com>
Date: 星期四, 13 七月 2023 10:21:54 +0800
Subject: [PATCH] 1

---
 src/views/layer/layerManage.vue |   57 +++++++++++++++++++++++++++++++++++++++++++++------------
 1 files changed, 45 insertions(+), 12 deletions(-)

diff --git a/src/views/layer/layerManage.vue b/src/views/layer/layerManage.vue
index bbac243..fdc1e49 100644
--- a/src/views/layer/layerManage.vue
+++ b/src/views/layer/layerManage.vue
@@ -19,7 +19,8 @@
         :data="menuOption"
         :expand-on-click-node="false"
         show-checkbox
-        @check-change="handleCheckChange"
+        @check="handleCheckChange"
+        ref="estreeRef"
       >
         <template #default="{ node, data }">
           <span class="custom-tree-node">
@@ -38,10 +39,10 @@
               </span>
               <template #dropdown>
                 <el-dropdown-menu>
-                  <el-dropdown-item @click.native="clickdropdown(1)"
+                  <el-dropdown-item @click.native="clickdropdown(1, data)"
                     >璇︾粏</el-dropdown-item
                   >
-                  <el-dropdown-item @click.native="clickdropdown(2)"
+                  <el-dropdown-item @click.native="clickdropdown(2, data)"
                     >灞炴��</el-dropdown-item
                   >
                 </el-dropdown-menu>
@@ -53,7 +54,11 @@
     </div>
   </div>
   <layer-set v-show="layerSetIsshow" @SETstate="SETstate"></layer-set>
-  <attribute-list></attribute-list>
+  <attribute-list
+    v-show="layerAttributeIsshow"
+    :layerData="layerObjData"
+    @spatialClose="setSpatialClose"
+  ></attribute-list>
 </template>
 
 <script lang="ts" setup>
@@ -67,8 +72,11 @@
 } from "vue";
 import layerSet from "./layerSet";
 import attributeList from "./attributeList";
+import { useStore } from "vuex"; // 寮曞叆useStore 鏂规硶
+const store = useStore(); // 璇ユ柟娉曠敤浜庤繑鍥瀞tore 瀹炰緥
 const stretchValue = ref("");
 
+let estreeRef = ref();
 const stretchOptions = [
   {
     value: "Option1",
@@ -97,11 +105,27 @@
     name: "娴嬭瘯",
     isShow: false,
     checkedAll: false,
+    type: 1,
     children: [
       {
         layerState: false,
         name: "鍥惧眰鍚嶇О",
         layerUrl: "",
+        type: 2,
+      },
+      {
+        layerState: false,
+        name: "鍥惧眰鑿滃崟",
+        layerUrl: "",
+        type: 1,
+        children: [
+          {
+            layerState: false,
+            name: "鍥惧眰鍚嶇О11",
+            layerUrl: "",
+            type: 2,
+          },
+        ],
       },
     ],
   },
@@ -110,13 +134,16 @@
     isShow: false,
     checkedAll: true,
     layerState: false,
+    type: 1,
   },
 ]);
 const layerSetIsshow = ref(false);
+const layerAttributeIsshow = ref(false);
 const props = {
   label: "name",
   children: "children",
 };
+const layerObjData = ref(null);
 // 褰撳墠閫変腑鐨勮妭鐐� id
 const selectedNodeId = ref(null as any); //鍋氱被鍨嬫柇瑷�澶勭悊
 const emits = defineEmits(["setCloseLayer"]);
@@ -153,15 +180,21 @@
     console.log(selectedNodeId.value, "褰撳墠閫変腑鐨勮妭鐐�");
   }
 }
-const handleCheckChange = (
-  data: Tree,
-  checked: boolean,
-  indeterminate: boolean
-) => {
-  console.log(data, checked, indeterminate);
+const handleCheckChange = (data, checked) => {
+  let son = estreeRef.value.getCheckedNodes();
+  console.log(son); //閫変腑鐨勬暟鎹�
+
+  store.commit("SET_CHECKLAYER", son);
 };
-const clickdropdown = (res) => {
-  console.log(res);
+const clickdropdown = (res, e) => {
+  if (res == 2) {
+    layerAttributeIsshow.value = true;
+    layerObjData.value = e;
+  }
+  console.log(res, e);
+};
+const setSpatialClose = (res) => {
+  layerAttributeIsshow.value = res;
 };
 </script>
 

--
Gitblit v1.9.3