From 6eaab52e4859ea6897114aa5055f3d1dacfe6217 Mon Sep 17 00:00:00 2001 From: Steven Date: Sun, 22 Feb 2026 13:00:36 +0800 Subject: [PATCH] fix(web): handle delete memo errors and only run post-delete actions on success --- web/src/components/MemoActionMenu/hooks.ts | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/web/src/components/MemoActionMenu/hooks.ts b/web/src/components/MemoActionMenu/hooks.ts index e4e52b63c..ddac3895b 100644 --- a/web/src/components/MemoActionMenu/hooks.ts +++ b/web/src/components/MemoActionMenu/hooks.ts @@ -98,15 +98,16 @@ export const useMemoActionHandlers = ({ memo, onEdit, setDeleteDialogOpen }: Use }, [setDeleteDialogOpen]); const confirmDeleteMemo = useCallback(async () => { - await deleteMemo(memo.name, { - onSuccess: () => { - // If this was a comment, refresh the parent memo's comments list so it disappears from the UI - if (memo.parent) { - queryClient.invalidateQueries({ queryKey: memoKeys.comments(memo.parent) }); - } - }, - }); + try { + await deleteMemo(memo.name); + } catch (error: unknown) { + handleError(error, toast.error, { context: "Delete memo", fallbackMessage: "An error occurred" }); + return; + } toast.success(t("message.deleted-successfully")); + if (memo.parent) { + queryClient.invalidateQueries({ queryKey: memoKeys.comments(memo.parent) }); + } if (isInMemoDetailPage) { navigateTo("/"); }