From c7e91cc9ebefd1a227c51d11675712a74792fd3e Mon Sep 17 00:00:00 2001 From: wanglin2 <1013335014@qq.com> Date: Thu, 20 Apr 2023 08:31:47 +0800 Subject: [PATCH] =?UTF-8?q?Fix=EF=BC=9A=E4=BF=AE=E5=A4=8D=E7=9F=AD?= =?UTF-8?q?=E6=97=B6=E9=97=B4=E5=BF=AB=E9=80=9F=E5=A4=9A=E6=AC=A1=E6=B8=B2?= =?UTF-8?q?=E6=9F=93=E6=97=B6=E8=8A=82=E7=82=B9=E4=BD=8D=E7=BD=AE=E9=94=99?= =?UTF-8?q?=E4=B9=B1=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- simple-mind-map/src/Render.js | 15 ++++++++++++++- 1 file changed, 14 insertions(+), 1 deletion(-) diff --git a/simple-mind-map/src/Render.js b/simple-mind-map/src/Render.js index aac78ecd..8a696e8e 100644 --- a/simple-mind-map/src/Render.js +++ b/simple-mind-map/src/Render.js @@ -250,6 +250,7 @@ class Render { // 渲染 render(callback = () => {}, source) { + let t = Date.now() // 如果当前还没有渲染完毕,不再触发渲染 if (this.isRendering) { // 等待当前渲染完毕后再进行一次渲染 @@ -281,7 +282,7 @@ class Render { // 更新根节点 this.root = root // 渲染节点 - this.root.render(() => { + const onEnd = () => { this.isRendering = false this.mindMap.emit('node_tree_render_end') callback && callback() @@ -289,6 +290,18 @@ class Render { this.hasWaitRendering = false this.render(callback, source) } + } + let { enableNodeTransitionMove, nodeTransitionMoveDuration } = + this.mindMap.opt + this.root.render(() => { + let dur = Date.now() - t + if (enableNodeTransitionMove && dur <= nodeTransitionMoveDuration) { + setTimeout(() => { + onEnd() + }, nodeTransitionMoveDuration - dur); + } else { + onEnd() + } }) }) this.mindMap.emit('node_active', null, this.activeNodeList)