el-upload action携带参数
时间: 2023-08-19 09:10:38 浏览: 257
vue+axios+el-upload实现文件上传(带参数):
3星 · 编辑精心推荐
在使用element-ui的el-upload组件时,可以通过设置action属性来指定上传的地址,并且可以携带参数。\[1\]你可以直接在action属性中使用:data={参数}的方式来传递参数,参数以键值对的形式{key1:value1,key2:value2}表示。例如:
```html
<el-upload action="/setmeal/updatePicture.do" :data={pictureName:this.imageName} :auto-upload="autoUpload" name="imgFile" :show-file-list="false" :on-success="handleAvatarSuccess" :before-upload="beforeAvatarUpload"></el-upload>
```
这样就可以在上传文件时携带参数访问后端。\[1\]
另外,你也可以使用upload组件本身的方式来上传,并携带参数。\[2\]你可以在el-upload组件中设置data属性来传递参数,例如:
```html
<el-upload action="https://www.xxxx.com/dd" :data="uploadData" :limit="1" :multiple="false" :before-upload="handleBeforeUpload" :on-remove="handleRemove" :on-error="handleError">
<i class="el-icon-folder-add"></i>
</el-upload>
```
在js中,你可以使用computed属性来设置uploadData,将参数以JSON.stringify的形式传递给后端。例如:
```javascript
computed: {
uploadData() {
return { body: JSON.stringify(this.form) }
}
},
```
这样就可以在上传文件时携带参数。\[2\]
需要注意的是,使用el-upload组件进行上传时,需要填入action参数,并且在接口中指定headers为'multipart/form-data'。\[3\]如果不想自动上传,可以设置:auto-upload="false"。\[3\]成功上传后,数据将以form-data格式传输。\[3\]
#### 引用[.reference_title]
- *1* [【ElementUI】Upload组件上传时如何携带参数](https://blog.csdn.net/A_soulmate/article/details/122459424)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v4^insert_chatgpt"}} ] [.reference_item]
- *2* *3* [element upload上传组件携带参数传参(一)](https://blog.csdn.net/qq_40128375/article/details/123112708)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insertT0,239^v4^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文