diff --git a/app/src/layout/dock/Outline.ts b/app/src/layout/dock/Outline.ts
index 1555eac85..35c3156d5 100644
--- a/app/src/layout/dock/Outline.ts
+++ b/app/src/layout/dock/Outline.ts
@@ -375,18 +375,21 @@ export class Outline extends Model {
}
let needReload = false;
const ops = data.data.sources[0];
- ops.doOperations.forEach((item: IOperation) => {
+ ops.doOperations.find((item: IOperation) => {
if ((item.action === "update" || item.action === "insert") &&
(item.data.indexOf('data-type="NodeHeading"') > -1 || item.data.indexOf(`
`) > -1)) {
needReload = true;
+ return true
} else if (item.action === "delete" || item.action === "move") {
needReload = true;
+ return true;
}
});
- if (ops.undoOperations) {
- ops.undoOperations.forEach((item: IOperation) => {
+ if (!needReload && ops.undoOperations) {
+ ops.undoOperations.find((item: IOperation) => {
if (item.action === "update" && item.data.indexOf('data-type="NodeHeading"') > -1) {
needReload = true;
+ return true;
}
});
}
diff --git a/app/src/util/Tree.ts b/app/src/util/Tree.ts
index f13d496dd..f1b7c87bf 100644
--- a/app/src/util/Tree.ts
+++ b/app/src/util/Tree.ts
@@ -84,6 +84,7 @@ export class Tree {
style = `padding-left: ${(item.depth - 1) * 18 + 22}px;margin-right: 2px`;
}
const showArrow = hasChild || (item.type === "backlink" && !isMobile());
+ // data-id 需要添加 item.id,否则大纲更新时 name 不一致导致 https://github.com/siyuan-note/siyuan/issues/11843
html += `
-
+
${iconHTML}
${item.name}