From 3dcdc04127362fae1a5a291b7950ddd44b79a7ad Mon Sep 17 00:00:00 2001 From: roymondchen Date: Thu, 8 Dec 2022 12:50:09 +0800 Subject: [PATCH] =?UTF-8?q?fix(editor):=20=E7=B2=98=E8=B4=B4=E7=9A=84?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E4=B8=BA=E5=BD=93=E5=89=8D=E9=80=89=E4=B8=AD?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E7=9A=84=E5=89=AF=E6=9C=AC=E6=97=B6=EF=BC=8C?= =?UTF-8?q?=E5=88=99=E6=B7=BB=E5=8A=A0=E5=88=B0=E5=BD=93=E5=89=8D=E9=80=89?= =?UTF-8?q?=E4=B8=AD=E7=BB=84=E4=BB=B6=E7=9A=84=E7=88=B6=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E4=B8=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit re #448 --- packages/editor/src/services/editor.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/packages/editor/src/services/editor.ts b/packages/editor/src/services/editor.ts index 356a438c..97dfdaac 100644 --- a/packages/editor/src/services/editor.ts +++ b/packages/editor/src/services/editor.ts @@ -581,9 +581,20 @@ class Editor extends BaseService { if (!Array.isArray(config)) return; + const node = this.get('node'); + + let parent: MContainer | undefined = undefined; + // 粘贴的组件为当前选中组件的副本时,则添加到当前选中组件的父组件中 + if (config.length === 1 && config[0].id === node.id) { + parent = this.get('parent'); + if (parent.type === NodeType.ROOT) { + parent = this.get('page'); + } + } + const pasteConfigs = await this.doPaste(config, position); - return this.add(pasteConfigs, this.get('parent')); + return this.add(pasteConfigs, parent); } public async doPaste(config: MNode[], position: PastePosition = {}): Promise {