From a4f83437c99e6f4bca6ba7b353873dcd5af44781 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=A1=97=E8=A7=92=E5=B0=8F=E6=9E=97?= <1013335014@qq.com> Date: Thu, 25 Jan 2024 15:19:11 +0800 Subject: [PATCH] =?UTF-8?q?Feat=EF=BC=9A=E6=96=B0=E5=A2=9EMOVE=5FUP=5FONE?= =?UTF-8?q?=5FLEVEL=E5=91=BD=E4=BB=A4=E5=B0=86=E8=8A=82=E7=82=B9=E4=B8=8A?= =?UTF-8?q?=E7=A7=BB=E4=B8=80=E4=B8=AA=E5=B1=82=E7=BA=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- simple-mind-map/src/core/render/Render.js | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/simple-mind-map/src/core/render/Render.js b/simple-mind-map/src/core/render/Render.js index c297d9bd..9b997a68 100644 --- a/simple-mind-map/src/core/render/Render.js +++ b/simple-mind-map/src/core/render/Render.js @@ -180,6 +180,9 @@ class Render { // 下移节点 this.downNode = this.downNode.bind(this) this.mindMap.command.add('DOWN_NODE', this.downNode) + // 将一个节点上移一个层级 + this.moveUpOneLevel = this.moveUpOneLevel.bind(this) + this.mindMap.command.add('MOVE_UP_ONE_LEVEL', this.moveUpOneLevel) // 移动节点 this.insertAfter = this.insertAfter.bind(this) this.mindMap.command.add('INSERT_AFTER', this.insertAfter) @@ -890,6 +893,22 @@ class Render { this.mindMap.render() } + // 将节点上移一个层级,多个节点只会操作第一个节点 + moveUpOneLevel(node) { + node = node || this.activeNodeList[0] + if (!node || node.isRoot || node.layerIndex <= 1) { + return + } + const parent = node.parent + const grandpa = parent.parent + const index = getNodeIndexInNodeList(node, parent.children) + const parentIndex = getNodeIndexInNodeList(parent, grandpa.children) + // 节点数据 + parent.nodeData.children.splice(index, 1) + grandpa.nodeData.children.splice(parentIndex + 1, 0, node.nodeData) + this.mindMap.render() + } + // 复制节点 copy() { this.beingCopyData = this.copyNode()