From bf48462e6ce0e0baa899c1c64c24c05290dc77fd Mon Sep 17 00:00:00 2001 From: WX <1377869194@qq.com> Date: 星期五, 21 七月 2023 18:01:32 +0800 Subject: [PATCH] 图层树开发方法(待验证)下拉框选择图片(有bug) --- src/views/layer/layerSet.vue | 54 ++++++++++++++++++++++++++++++++++++++++++++++++------ 1 files changed, 48 insertions(+), 6 deletions(-) diff --git a/src/views/layer/layerSet.vue b/src/views/layer/layerSet.vue index ae13792..3908cd2 100644 --- a/src/views/layer/layerSet.vue +++ b/src/views/layer/layerSet.vue @@ -74,8 +74,12 @@ @click="delLayer" >鍒犻櫎</el-button > - <el-button type="primary" :icon="Top">鍚戜笂绉诲姩</el-button> - <el-button type="primary" :icon="Bottom">鍚戜笅绉诲姩</el-button> + <el-button type="primary" :icon="Top" @click="move(1)" + >鍚戜笂绉诲姩</el-button + > + <el-button type="primary" :icon="Bottom" @click="move(2)" + >鍚戜笅绉诲姩</el-button + > </div> <div class="edit_box_form"> <el-form :model="form" label-width="120px"> @@ -208,7 +212,7 @@ } var addObj = { id: id, - name: form.name, + cnName: form.name, region: form.region, layerUrl: form.layerUrl, children: [], @@ -220,11 +224,13 @@ } if (t == "t") { - addObj.parentId = selectedObj.value.parentId; + // console.log(treeRef.value.getNode(selectedObj.value)); + // addObj.parentId = selectedObj.value.parentId; + treeRef.value.insertAfter(addObj, treeRef.value.getNode(selectedObj.value)); } else { - addObj.parentId = selectedNodeId.value; + // addObj.parentId = selectedNodeId.value; + treeRef.value.append(addObj, treeRef.value.getNode(selectedObj.value)); } - emits("addlayer", addObj); }; //鍒犻櫎 const delLayer = () => { @@ -246,6 +252,42 @@ } }); }; +//绉诲姩 +const move = (type) => { + // let node = treeRef.value.getCurrentNode(); + let node = treeRef.value.getNode(selectedObj.value); + let data = selectedObj.value; + // 灏嗗彉鍔ㄤ箣鍓嶇殑node澶囦唤 + let copyNode = { ...node }; + copyNode.previousSibling = { ...node.previousSibling }; + copyNode.nextSibling = { ...node.nextSibling }; + // window.sessionStorage.setItem("menuNode", CircularJSON.stringify(copyNode)); + + if (type === 1) { + // 涓婄Щ + if (node.previousSibling) { + // 鍒犻櫎鍘熷厛鐨刵ode + treeRef.value.remove(node.data); + // 鎷垮埌copy鐨刵ode + // nodeData = CircularJSON.parse(window.sessionStorage.getItem("menuNode")); + // 澶嶅埗璇ode鍒版寚瀹氫綅缃�(鍙傛暟锛�1. 瑕佸鍔犵殑鑺傜偣鐨� data 2. 瑕佸鍔犵殑鑺傜偣鐨勫悗涓�涓妭鐐圭殑 data銆乲ey 鎴栬�� node) + + treeRef.value.insertBefore(copyNode.data, copyNode.previousSibling.data); + // window.sessionStorage.removeItem("menuNode"); + } else { + return ElMessage.warning("璇ヨ彍鍗曞凡缁忔槸褰撳墠灞傛渶涓婄骇"); + } + } else { + // 涓嬬Щ + if (node.nextSibling) { + treeRef.value.remove(node.data); + treeRef.value.insertAfter(copyNode.data, copyNode.nextSibling.data); + } else { + return ElMessage.warning("璇ヨ彍鍗曞凡缁忔槸褰撳墠灞傛渶涓嬬骇"); + } + } + emits("addlayer", { type: type, id: selectedObj.value.id }); +}; </script> <style lang="less" scoped> -- Gitblit v1.9.3