el-upload多选文件上传报错解决方案

 更新时间:2022年07月10日 09:27:34   作者:暂时想不到叫什么  
本文主要介绍了el-upload多选文件上传报错解决方案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

在element-ui中,el-upload可以进行文件多选操作。

在多选文件上传时,会循环调用上传方法。在第一次循环时,文件可以正常上传,第二次开始就会在

progress事件中报错:

尝试上传2个文件,在这里打印progress事件的参数:

会发现在第二次循环的时候,事件获取不到file,所以接下来的操作无法正常进行。如果不处理这个问题的话,上传方法依然可以使用,只不过最终传上去的只是第一个文件。

本人目前还不知道是什么原因造成了这个结果。但是经过查找相关问题找到了解决办法:

在进行文件多选上传的时候,创建一个中间变量去进行对文件的添加和删除操作,原有的filelist只进行页面列表的显示,在提交表单的时候对数据进行处理,将中间变量的值重新赋给接口需要的字段。这么做的目的就是避免去直接操作filelist

这里只展示关键部分代码:

    /**
     * file:上传成功后的文件参数
     * isMultiple:true=>多选;false:=>单选
     */
    handlePictureSuccess(file,isMultiple){
        // 单选、多选是可配字段,在这里进行分别处理
        if(isMultiple){
          
          ···

          // file返回的数据很多,只添加需要的数据
          this.realFileList.push({path:file.path,name:file.name,url:file.url})

          ···

        }else{

          ···

          this.fileList.push({path:file.path,name:file.name,url:file.url})

          ···

        }
    },
    /**
     * 提交表单
     * form:表单
     */
    submitFn(form){

      ···
      const fileList = []
      this.$refs.Form.realFileList.forEach(el=>{
        fileList.push(el)
      })

      ···

    },

到此这篇关于el-upload多选文件上传报错解决方案的文章就介绍到这了,更多相关el-upload多选文件上传 内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • 在vue中给列表中的奇数行添加class的实现方法

    在vue中给列表中的奇数行添加class的实现方法

    今天小编就为大家分享一篇在vue中给列表中的奇数行添加class的实现方法,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-09-09
  • Vue router配置与使用分析讲解

    Vue router配置与使用分析讲解

    第一次写Vue项目,要用到router.js,看了一下官方文档,还是很懵逼,不知道怎么配置,又去看视频查资料,最后终于搞定了。话不多说,先上代码,我再讲一些要注意的细节
    2022-12-12
  • Vue项目新一代状态管理工具Pinia的使用教程

    Vue项目新一代状态管理工具Pinia的使用教程

    pinia是一个轻量级的状态管理库,属于 vue3 生态圈新的成员之一,下面这篇文章主要给大家介绍了关于Vue项目新一代状态管理工具Pinia的使用教程,需要的朋友可以参考下
    2022-11-11
  • Vue echarts@4.x中国地图及AMap相关API使用详解

    Vue echarts@4.x中国地图及AMap相关API使用详解

    这篇文章主要为大家介绍了Vue使用echarts@4.x中国地图及AMap相关API使用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • defineProperty和Proxy基础功能及性能对比

    defineProperty和Proxy基础功能及性能对比

    这篇文章主要为大家介绍了defineProperty和Proxy基础功能及性能对比,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • 在vue-cli3.0 中使用预处理器 (Sass/Less/Stylus) 配置全局变量操作

    在vue-cli3.0 中使用预处理器 (Sass/Less/Stylus) 配置全局变量操作

    这篇文章主要介绍了在vue-cli3.0 中使用预处理器 (Sass/Less/Stylus) 配置全局变量操作,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-08-08
  • Vue中ElementUI分页组件Pagination的使用方法

    Vue中ElementUI分页组件Pagination的使用方法

    这篇文章主要为大家详细介绍了Vue中ElementUI分页组件Pagination的使用,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2021-05-05
  • Vue瀑布流插件的使用示例

    Vue瀑布流插件的使用示例

    这篇文章主要介绍了Vue瀑布流插件的使用示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2018-09-09
  • Vue+Node.js+WebSocket实现即时通讯

    Vue+Node.js+WebSocket实现即时通讯

    本文主要介绍了Vue+Node.js+WebSocket实现即时通讯,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • 关于Element-UI中slot的用法及说明

    关于Element-UI中slot的用法及说明

    这篇文章主要介绍了关于Element-UI中slot的用法及说明,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-10-10

最新评论