瀏覽代碼

refactor(useImport): 统一处理媒体元素更新逻辑

移除图片上传的冗余注释,为音频和视频上传添加相同的状态更新逻辑,保持代码一致性
lsc 1 月之前
父節點
當前提交
460e3e9ea1
共有 1 個文件被更改,包括 6 次插入1 次删除
  1. 6 1
      src/hooks/useImport.ts

+ 6 - 1
src/hooks/useImport.ts

@@ -1372,7 +1372,6 @@ export default () => {
                     const url = await uploadFileToS3(file)
                     element.src = url // 替换为远程 URL
                     
-                    // 使用 slidesStore.updateElement 方法更新元素,确保 Vue 能够检测到变化
                     const slidesStore = useSlidesStore()
                     slidesStore.updateElement({ id: element.id, props: { src: url } })
                   }
@@ -1411,6 +1410,9 @@ export default () => {
                     const file = dataToFile(el.blob, `audio_${Date.now()}.mp3`, el.blob.type)
                     const url = await uploadFileToS3(file)
                     element.src = url
+
+                    const slidesStore = useSlidesStore()
+                    slidesStore.updateElement({ id: element.id, props: { src: url } })
                   }
                   catch (error) {
                     console.error('Audio upload failed:', error)
@@ -1449,6 +1451,9 @@ export default () => {
                     }
                     const url = await uploadFileToS3(file)
                     element.src = url
+                    
+                    const slidesStore = useSlidesStore()
+                    slidesStore.updateElement({ id: element.id, props: { src: url } })
                   }
                   catch (error) {
                     console.error('Video upload failed:', error)