fix(web): handle delete memo errors and only run post-delete actions on success

This commit is contained in:
Steven 2026-02-22 13:00:36 +08:00
parent 1d9d4cd797
commit 6eaab52e48
1 changed files with 9 additions and 8 deletions

View File

@ -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("/");
}