el-upload 上传多个文件的时候。是一个文件接着一个上传的。但是如果说我们想一次性上传所有的文件,然后后台统一处理呢。那我们就要想着怎么做。下面列出来:

第一步。引用el-upload插件

<el-uploadref="upload":action="getUploadAction":on-success="uploadSuccess":on-error="uploadError":before-remove="beforeRemove"multiple:limit="10":headers="getToken":on-exceed="handleExceed":on-change="handleChange":auto-upload="false":http-request="httpRequest":file-list="fileList"><el-button size="small" type="primary">上传文件</el-button>
</el-upload>

:action="getUploadAction" :这个东西你甚至可以填个"/"就行。

multiple:这个属性是要的。注意了这个是控制能传多个文件。

:limit="10":这个是控制了上传文件的个数

:auto-upload="false" 这个很重要,这个控制

this.$refs.upload.submit(); 走不走:action="getUploadAction"的这个属性。

如果没有这个属性。后台点击上传文件的按钮会直接走action的后台接口


第二步 我是后续加了个按钮来实现文件的上传的

<el-button size="small" type="primary" @click="submitImport">{{$t('comm.import')}}</el-button>

第三步 前台传给后台的时候。特别要注意。我们是要用form格式去传过去的。具体的写法我贴在后面:

let upData = new FormData();
upData.append("JsonStr", JSON.stringify(DTO))for(let i=0;i<this.$refs.upload.uploadFiles.length;i++){upData.append("file",this.$refs.upload.uploadFiles[i].raw);
}
upData.append('contentType',"multipart/form-data;")

里面的定义。jsonStr是传到后台的json格式的字符串。file是具体的文件。contentType这个是我用来逻辑处理的,你们可以不填。

这个我要说明一下。网上好多人说要用:http-request="httpRequest"这个属性里的httpRequest的来拼接文件。但是我具体使用下来,发现这个写法,如果上传多次,文件是会被多次放进去的。也就是第一次是五个文件的话,第二次直接变成十个文件。

剩下来就是

axios.post(url, data)

网上的写法就行。但是如果你的axios的底层是定义过的话。

那你要去找

axios.interceptors.request.use(config => {
})
config.headers = {'Content-Type': contentType,'Accept-Language': store.state.language
}

把这里面的context-Type 变成multipart/form-data;

config.data也要注意。直接传过去就行。

第四步 后台接收。好多人都没写到这一步

  @RequestParam(value = "file", required = false)List<MultipartFile> multipartFiles,String JsonStr

接收的参数是这个玩意。然后直接去解析就行

Vue el-upload插件上传批量文件相关推荐

  1. 使用el upload标签上传文件的几种常见使用场景(前台+后台)

    前言:本篇博客主要介绍ElementUI中el upload上传控件的使用,包含前后台代码. 文章目录 一.总体代码 二.使用场景 1.添加 2.修改 3.单独上传到服务器 一.总体代码 1.前端控件 ...

  2. Vue:使用elementUI upload组件上传excel文件

    <template><div><el-upload dragaction="" :http-request="upload" :b ...

  3. 使用elementui实现表单上传功能_使用ElementUI中的upload组件上传Excel文件

    最初使用该组件实现图片上传是没有问题的,前后端配合,最终实现想要的效果,组件使用过代码如下: 将文件拖到此处,或点击上传 现在改为使用该组件实现Excel文件上传,组件的使用几乎是不变的,代码如下: ...

  4. Antd的Upload组件上传文件控制文件数量、格式等,以及提交时如何获取文件

    背景:使用React的antd组件的Upload(官网),要求文件上传后,在点击提交时再将文件传过去. 技术点: 完全控制的文件上传. 可控制上传数量. 控制文件格式. 移除时的事件onRemove. ...

  5. vue 使用视频流 formdata上传视频文件 并且限制视频大小 格式

    需求 代码 <div class="f2-sub_btn"><van-button type="primary" block><s ...

  6. [Asp.net]Uploadify上传大文件,Http error 404 解决方案 - wolfy

    引言 之前使用Uploadify做了一个上传图片并预览的功能,今天在项目中,要使用该插件上传大文件.之前弄过上传图片的demo,就使用该demo进行测试.可以查看我的这篇文章: [Asp.net]Up ...

  7. cmd远程连接上传下载文件

    远程连接上传下载文件问题 上传文件 put filename 下载文件 get filename 下载文件夹 首先在远程新建一个文件(命名和本地相同) mkdir hello_python 并且cd到 ...

  8. vue excel导入mysql详细教程_Vue前端上传EXCEL文件,后端(springBoot+MyBatis+MySQL)解析EXCEL并批量插入/更新数据库...

    文章目录 Vue前端 后端 controller层 service层:如何解析Excel文件 MyBatis:实现批量插入 在mysql中设置唯一索引Unique Index MySQL中的inser ...

  9. vue+elementui 同时有上传文件和批量上传文件功能,上传文件或批量上传文件后必须刷新才能再次上传文件

    报错描述: 使用element-ui的上传文件组件写一个批量上传和上传文件,但是发现每次上传文件后或者批量上传文件后,不能再次上传文件或者批量上传文件.只有进入页面第一次点击上传文件或者批量上传文件才 ...

  10. vue php 文件上传,使用vue.js和laravel上传文件

    我尝试在vue.js和laravel中上传pdf文件,files_array是这样定义的:data(){ return { formData: new Form ({ files_array:'', ...

最新文章

  1. 火狐浏览器设置cookie失败_IE、谷歌Cookie记录失败,火狐成功(IE和Firefox下的Cookie兼容问题)...
  2. 菜菜sklearn——XGBoost(2)
  3. Netty中实现多客户端连接与通信-以实现聊天室群聊功能为例(附代码下载)
  4. java date显示格式_Java如何显示不同格式的日期?
  5. import openfire4.0.2 source code in eclipse
  6. 车林通购车之家--购车计算器模块--保险
  7. 在nginx中配置如何防止直接用ip访问服务器web server及server_name特性讲解
  8. 转: MATLAB: cat函数使用
  9. 加油站都需要什么手续_公司变更需要什么手续
  10. 《计算机视觉:模型、学习和推理》一3.1 伯努利分布
  11. 心跳监测器 IHeartBeatChecker
  12. web python template injection_XCTF Web_python_template_injection
  13. 《全局光照技术》在摩点网发起众筹活动
  14. C语言简单程序编写(一)
  15. 下载精确卫星星历文件 2015.3.31
  16. 三行代码实现`年月日`的弹出控件
  17. 【Github万星】50个有趣而又鲜为人知的 Python 特性
  18. C#学习笔记之从入门到精通
  19. Shopee代贴单对商家有什么好处?星卓越货代系统告诉你
  20. Tomcat启动报错 More than one fragment with the name [spring_web] was found. This is not legal with relat

热门文章

  1. 计算机编号、硬盘序列号和Mac地址查询方法
  2. 企业网站建设完成后如何优化推广?
  3. 10、一篇经典的域渗透文章
  4. (APP测试三板斧)第一板:Xposed+JustTrustMe绕过SSL Pining
  5. Playmaker与iTween
  6. 软件定义和硬件重构知多少(三)
  7. Android network基础知识 — IPv4和IPv6的区别
  8. Xcopy 复制文件和目录,包括子目录。
  9. 数值分析-LU三角分解
  10. 17届智能车竞赛技术报告 | 常熟理工学院-昆承湖二队