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);

  }  
}
相关推荐
程序员 沐阳14 小时前
从缓慢等待到瞬间响应:Vite 如何重塑前端开发体验
前端·前端框架
wangjinsheng59314 小时前
Vue3 + Element Plus 前端 AI 编码模板
前端·vue.js·ai·elementui·ai编程
roman_日积跬步-终至千里14 小时前
【后端】Spring Boot Web请求核心问题解析
前端·spring boot·后端·系统架构
Mintopia14 小时前
让开发效率翻倍的,往往不是新技术,而是小工具
前端
xiaohe0714 小时前
SpringBoot + vue 管理系统
vue.js·spring boot·后端
Cobyte14 小时前
2.响应式系统基础:依赖追踪的基础 —— 发布订阅模式(前端应用最广的设计模式)
前端·javascript·vue.js
qq_3813385014 小时前
Vue3 响应式系统深度解析:从原理到性能优化实战
vue.js·性能优化
慧一居士14 小时前
Nitro 和nuxt4框架关系
前端
IT_陈寒14 小时前
React的useEffect把我坑惨了,这种闭包问题谁能想到
前端·人工智能·后端
xuankuxiaoyao15 小时前
VUE.JS实践--事件对象和计算属性
javascript·vue.js·ecmascript