From fd4934f64bcf12e8a5dec03df797493998161e18 Mon Sep 17 00:00:00 2001 From: yanmao <55792257+yanmao-cc@users.noreply.github.com> Date: Tue, 9 Nov 2021 11:40:26 +0800 Subject: [PATCH] =?UTF-8?q?fix(markdown):=20=E7=B2=98=E8=B4=B4=20markdown?= =?UTF-8?q?=20=E5=90=8E=E6=B2=A1=E6=9C=89=E5=88=A0=E9=99=A4markdown?= =?UTF-8?q?=E8=AF=AD=E6=B3=95?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/engine/src/change/index.ts | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/packages/engine/src/change/index.ts b/packages/engine/src/change/index.ts index 7e32c0a4..8912ba56 100644 --- a/packages/engine/src/change/index.ts +++ b/packages/engine/src/change/index.ts @@ -335,8 +335,15 @@ class ChangeModel implements ChangeInterface { const text = range.startNode.text(); if (/^\u200B/.test(text)) range.startNode.text(text.substr(1)); } - + let startRange: { node: NodeInterface; offset: number } | undefined = + undefined; const apply = (range: RangeInterface) => { + if (startRange && startRange.node.parent()) { + range + .shrinkToElementNode() + .setStart(startRange.node, startRange.offset); + range.enlargeToElementNode(); + } block.merge(range); list.merge(undefined, range); mark.merge(range); @@ -356,9 +363,8 @@ class ChangeModel implements ChangeInterface { apply(range); return; } + // 第一个子节点不是block节点就追加到当前节点下 - let startRange: { node: NodeInterface; offset: number } | undefined = - undefined; if (!nodeApi.isBlock(firstNode)) { range.shrinkToElementNode(); if (childNodes.length > 0) { @@ -523,12 +529,6 @@ class ChangeModel implements ChangeInterface { removeEmptyNode(nextNode); } } - if (startRange && startRange.node.parent()) { - range - .shrinkToElementNode() - .setStart(startRange.node, startRange.offset); - range.enlargeToElementNode(); - } apply(range); }