Vue上传多个文件
首先现在form表单中定义上传组件,
<el-form-item prop="files"> <el-upload class="upload-demo" action="#" :auto-upload="false" :on-change="uploadFiles" :multiple="true" :file-list="fileList" > <div v-for="filename in fileList">{{filename}}</div> <el-button size="mini" type="primary" icon="el-icon-upload2" >{{ $t('lang.information.UDF')}} </el-button> </el-upload> </el-form-item>
data里面定义一下
1 | fileList:[], |
methods里面
//上传多分文件 uploadFiles (item,fileList) { this.form.files = fileList },
这里我们想要提交表单的时候把文件和表单对象一起提交给后端,所以我们使用formData
let formData = new FormData() formData.append("address",this.form.address) console.log("多文件上传",this.form.files) this.form.files.forEach(file => formData.append('files', file.raw))
这里注意一下,我们多文件上传时的fileList不是我们file数组,而是fileList数组里面的每一项的raw才是对应的file。
后端controller去接收
public AjaxResult edit(PortalData portalData, @RequestParam(value = "files", required = false) MultipartFile[] files) throws Exception { }
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· DeepSeek在M芯片Mac上本地化部署
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能