浏览代码

:bug: fix https://github.com/siyuan-note/siyuan/issues/5463

Vanessa 3 年之前
父节点
当前提交
97cde7f17f
共有 1 个文件被更改,包括 12 次插入2 次删除
  1. 12 2
      app/src/protyle/util/insertHTML.ts

+ 12 - 2
app/src/protyle/util/insertHTML.ts

@@ -47,6 +47,8 @@ export const insertHTML = (html: string, protyle: IProtyle, isBlock = false) =>
     let id = blockElement.getAttribute("data-node-id");
     range.insertNode(document.createElement("wbr"));
     let oldHTML = blockElement.outerHTML;
+    const undoOperation: IOperation[] = [];
+    const doOperation: IOperation[] = [];
     if (range.toString() !== "") {
         const inlineMathElement = hasClosestByAttribute(range.commonAncestorContainer, "data-type", "inline-math");
         if (inlineMathElement) {
@@ -59,6 +61,16 @@ export const insertHTML = (html: string, protyle: IProtyle, isBlock = false) =>
             range.deleteContents();
         }
         range.insertNode(document.createElement("wbr"));
+        undoOperation.push({
+            action: "update",
+            id,
+            data: oldHTML
+        })
+        doOperation.push({
+            action: "update",
+            id,
+            data: blockElement.outerHTML
+        })
     }
     const tempElement = document.createElement("template");
     tempElement.innerHTML = html;
@@ -114,8 +126,6 @@ export const insertHTML = (html: string, protyle: IProtyle, isBlock = false) =>
             }
         }
     }
-    const undoOperation: IOperation[] = [];
-    const doOperation: IOperation[] = [];
     const cursorLiElement = hasClosestByClassName(blockElement, "li");
     // 列表项不能单独进行粘贴 https://ld246.com/article/1628681120576/comment/1628681209731#comments
     if (tempElement.content.children[0]?.getAttribute("data-type") === "NodeListItem") {