Jelajahi Sumber

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

移除图片上传的冗余注释,为音频和视频上传添加相同的状态更新逻辑,保持代码一致性
lsc 1 bulan lalu
induk
melakukan
460e3e9ea1
1 mengubah file dengan 6 tambahan dan 1 penghapusan
  1. 6 1
      src/hooks/useImport.ts

+ 6 - 1
src/hooks/useImport.ts

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