el-upload 同时选取多文件上传,文件列表却只传了一个

背景:使用element的上传组件,在使用多文件上传时,发现如果同时选择两个文件,上传完成之后,upload组件的列表只显示一个文件。

通过查看控制台发现on-success方法在上传文件时,只执行了一次。返回的两个文件,其中一个状态是uploading。而我们取文件又只取了status是success的文件。

解决:重点在于on-success中的那句文件列表上传状态的判断 (Vue3版本)

javascript 复制代码
// 上传成功回调
function handleUploadSuccess(res: any, file: any,fList) {
//等待所有文件都上传完成,这里注意fList是所有的文件(包含已上传的)
  if (fList.every(v => v.status == 'success')) {
    console.log('处理字段')
    //处理字段
    fList.map(item => {
  item.response && uploadList.value.push({
 name: item.response.data.original,
 url: item.response.data.attachUrl,
 id:item.response.data.id }); //只push新上传的 (带有response)
            })
    emit('change',  uploadList.value);

  }  
}
相关推荐
冴羽yayujs12 小时前
JavaScript 9 个先有库再有 API 的故事
开发语言·javascript·ecmascript
m0_7510186612 小时前
docker 安装 nginx
vue.js·nginx·docker
油丶酸萝卜别吃12 小时前
JavaScript 深度合并函数 deepMerge 实现指南(附完整测试用例)
开发语言·javascript·测试用例
问心无愧051312 小时前
ctf show web 入门152
前端·笔记
kyriewen12 小时前
Copilot下个月按Token收钱,我算了一笔账:重度用户一年要多花3000块
前端·javascript·openai
zyl8372113 小时前
3Dmol.js + Vue3快速上手
vue.js
镜宇秋霖丶13 小时前
2026.5.18@霖宇博客制作中遇见的问题
vue.js
还有多久拿退休金13 小时前
dnd-kit 碰撞检测算法:你的订单为什么自己"跑"到了 1 号?
前端
qq_3168377513 小时前
npm run tauri build Downloading下载超时
前端·npm·node.js
w_t_y_y13 小时前
VUE3(二)VUE2和VUE3区别
前端·javascript·vue.js