diff --git a/web/src/components/MemoEditor.tsx b/web/src/components/MemoEditor.tsx index 1fb8900d..e88b113d 100644 --- a/web/src/components/MemoEditor.tsx +++ b/web/src/components/MemoEditor.tsx @@ -156,17 +156,20 @@ const MemoEditor = () => { const handleDropEvent = async (event: React.DragEvent) => { if (event.dataTransfer && event.dataTransfer.files.length > 0) { event.preventDefault(); - const resourceList: Resource[] = []; + const uploadResourceList: Resource[] = []; for (const file of event.dataTransfer.files) { const resource = await handleUploadResource(file); if (resource) { - resourceList.push(resource); + uploadResourceList.push(resource); if (editorState.editMemoId) { await upsertMemoResource(editorState.editMemoId, resource.id); } } } - editorStateService.setResourceList([...editorState.resourceList, ...resourceList]); + if (uploadResourceList.length > 0) { + const resourceList = editorStateService.getState().resourceList; + editorStateService.setResourceList([...resourceList, ...uploadResourceList]); + } } }; @@ -176,7 +179,8 @@ const MemoEditor = () => { const file = event.clipboardData.files[0]; const resource = await handleUploadResource(file); if (resource) { - editorStateService.setResourceList([...editorState.resourceList, resource]); + const resourceList = editorStateService.getState().resourceList; + editorStateService.setResourceList([...resourceList, resource]); } } };