diff --git a/lightrag_webui/src/AppRouter.tsx b/lightrag_webui/src/AppRouter.tsx index 9aec0a14..e7130ad6 100644 --- a/lightrag_webui/src/AppRouter.tsx +++ b/lightrag_webui/src/AppRouter.tsx @@ -80,7 +80,12 @@ const AppRouter = () => { - + ) diff --git a/lightrag_webui/src/components/documents/ClearDocumentsDialog.tsx b/lightrag_webui/src/components/documents/ClearDocumentsDialog.tsx index 1ccbd4a5..e6b40356 100644 --- a/lightrag_webui/src/components/documents/ClearDocumentsDialog.tsx +++ b/lightrag_webui/src/components/documents/ClearDocumentsDialog.tsx @@ -61,6 +61,14 @@ export default function ClearDocumentsDialog({ onDocumentsCleared }: ClearDocume try { const result = await clearDocuments() + if (result.status !== 'success') { + toast.error(t('documentPanel.clearDocuments.failed', { message: result.message })) + setConfirmText('') + return + } + + toast.success(t('documentPanel.clearDocuments.success')) + if (clearCacheOption) { try { await clearCache() @@ -70,28 +78,19 @@ export default function ClearDocumentsDialog({ onDocumentsCleared }: ClearDocume } } - if (result.status === 'success') { - toast.success(t('documentPanel.clearDocuments.success')) - } else { - toast.error(t('documentPanel.clearDocuments.failed', { message: result.message })) + // Update health check status + await check() + + // Refresh document list if provided + if (onDocumentsCleared) { + await onDocumentsCleared() } + + // 所有操作成功后关闭对话框 + setOpen(false) } catch (err) { toast.error(t('documentPanel.clearDocuments.error', { error: errorMessage(err) })) - } finally { - // Execute these operations regardless of success or failure - try { - // Update backend state - await check() - - // Refresh document list - if (onDocumentsCleared) { - await onDocumentsCleared() - } - } catch (refreshErr) { - console.error('Error refreshing state:', refreshErr) - } - - setOpen(false) + setConfirmText('') } }, [isConfirmEnabled, clearCacheOption, setOpen, t, check, onDocumentsCleared])