From 9a3219f12ef95f4b99fba9d734f8330f5b32a7a1 Mon Sep 17 00:00:00 2001 From: syuilo <4439005+syuilo@users.noreply.github.com> Date: Tue, 10 Jun 2025 09:51:45 +0900 Subject: [PATCH] =?UTF-8?q?fix(frontend):=20Plugin:register=5Fnote=5Fview?= =?UTF-8?q?=5Finterruptor()=E3=81=AB=E3=82=88=E3=82=8B=E3=83=8E=E3=83=BC?= =?UTF-8?q?=E3=83=88=E3=81=AE=E6=9B=B8=E3=81=8D=E6=8F=9B=E3=81=88=E3=81=8C?= =?UTF-8?q?=E6=A9=9F=E8=83=BD=E3=81=97=E3=81=AA=E3=81=84=E5=95=8F=E9=A1=8C?= =?UTF-8?q?=E3=82=92=E4=BF=AE=E6=AD=A3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fix #16180 --- CHANGELOG.md | 1 + packages/frontend/src/components/MkNote.vue | 18 ++++++++---------- .../frontend/src/components/MkNoteDetailed.vue | 18 ++++++++---------- 3 files changed, 17 insertions(+), 20 deletions(-) diff --git a/CHANGELOG.md b/CHANGELOG.md index 446f74007f..dd2534adeb 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -12,6 +12,7 @@ - Fix: コントロールパネルのファイル欄などのデザインが崩れている問題を修正 - Fix: ユーザーの検索結果を追加で読み込むことができない問題を修正 - Fix: タッチ操作時にチャートのツールチップが消えなくなる場合がある問題を修正 +- Fix: Plugin:register_note_view_interruptor()によるノートの書き換えが機能しない問題を修正 ### Server - Feat: 全てのチャットメッセージを既読にするAPIを追加(chat/read-all) diff --git a/packages/frontend/src/components/MkNote.vue b/packages/frontend/src/components/MkNote.vue index 4a78d00665..040c2acdc2 100644 --- a/packages/frontend/src/components/MkNote.vue +++ b/packages/frontend/src/components/MkNote.vue @@ -268,17 +268,15 @@ let note = deepClone(props.note); // plugin const noteViewInterruptors = getPluginHandlers('note_view_interruptor'); if (noteViewInterruptors.length > 0) { - onMounted(async () => { - let result: Misskey.entities.Note | null = deepClone(note); - for (const interruptor of noteViewInterruptors) { - try { - result = await interruptor.handler(result!) as Misskey.entities.Note | null; - } catch (err) { - console.error(err); - } + let result: Misskey.entities.Note | null = deepClone(note); + for (const interruptor of noteViewInterruptors) { + try { + result = await interruptor.handler(result!) as Misskey.entities.Note | null; + } catch (err) { + console.error(err); } - note = result as Misskey.entities.Note; - }); + } + note = result as Misskey.entities.Note; } const isRenote = Misskey.note.isPureRenote(note); diff --git a/packages/frontend/src/components/MkNoteDetailed.vue b/packages/frontend/src/components/MkNoteDetailed.vue index e090901875..7a2090d171 100644 --- a/packages/frontend/src/components/MkNoteDetailed.vue +++ b/packages/frontend/src/components/MkNoteDetailed.vue @@ -289,17 +289,15 @@ let note = deepClone(props.note); // plugin const noteViewInterruptors = getPluginHandlers('note_view_interruptor'); if (noteViewInterruptors.length > 0) { - onMounted(async () => { - let result: Misskey.entities.Note | null = deepClone(note); - for (const interruptor of noteViewInterruptors) { - try { - result = await interruptor.handler(result!) as Misskey.entities.Note | null; - } catch (err) { - console.error(err); - } + let result: Misskey.entities.Note | null = deepClone(note); + for (const interruptor of noteViewInterruptors) { + try { + result = await interruptor.handler(result!) as Misskey.entities.Note | null; + } catch (err) { + console.error(err); } - note = result as Misskey.entities.Note; - }); + } + note = result as Misskey.entities.Note; } const isRenote = Misskey.note.isPureRenote(note);