diff --git a/web/src/components/Memo.tsx b/web/src/components/Memo.tsx
index 65294137..9e82fbd0 100644
--- a/web/src/components/Memo.tsx
+++ b/web/src/components/Memo.tsx
@@ -146,6 +146,11 @@ export function formatMemoContent(content: string) {
content = content.replace(IMAGE_URL_REG, "");
}
+ content = content
+ .replace(TAG_REG, "#$1")
+ .replace(LINK_REG, "$1")
+ .replace(MEMO_LINK_REG, "$1");
+
// 中英文之间加空格
if (shouldSplitMemoWord) {
content = content
@@ -153,11 +158,6 @@ export function formatMemoContent(content: string) {
.replace(/([A-Za-z0-9?.,;[\]]+)([\u4e00-\u9fa5])/g, "$1 $2");
}
- content = content
- .replace(TAG_REG, "#$1")
- .replace(LINK_REG, "$1")
- .replace(MEMO_LINK_REG, "$1");
-
const tempDivContainer = document.createElement("div");
tempDivContainer.innerHTML = content;
for (let i = 0; i < tempDivContainer.children.length; i++) {
diff --git a/web/src/components/MemoEditor.tsx b/web/src/components/MemoEditor.tsx
index 2622fe36..403eda57 100644
--- a/web/src/components/MemoEditor.tsx
+++ b/web/src/components/MemoEditor.tsx
@@ -116,6 +116,8 @@ const MemoEditor: React.FC = () => {
return () => {
editorRef.current?.element.removeEventListener("paste", handlePasteEvent);
editorRef.current?.element.removeEventListener("drop", handleDropEvent);
+ editorRef.current?.element.removeEventListener("click", handleClickEvent);
+ editorRef.current?.element.removeEventListener("keydown", handleKeyDownEvent);
};
}, []);