自定義elementui上傳文件以及攜帶參數(shù)問(wèn)題
自定義elementui上傳文件以及攜帶參數(shù)
elementui提供了上傳文件的ui,可以比較方便,我們需要它來(lái)完成自定義上傳文件以及攜帶參數(shù)需要改寫(xiě)其中的一些方法來(lái)實(shí)現(xiàn)。
下面是一個(gè)簡(jiǎn)單的上傳標(biāo)簽
<el-upload
ref="upload"
style="display: inline"
drag
action=""
:before-upload="beforeUploadHandle"
:http-request="handleUploadForm"
:auto-upload="false"
multiple
:limit="1"
:on-exceed="handleExceed">
<el-link icon="el-icon-paperclip" type="primary">添加需要上傳的文件</el-link>
</el-upload>不自動(dòng)上傳
:auto-upload=“false”
- 限制上傳文件個(gè)數(shù)
:limit=“1”
- 上傳之前的校驗(yàn)
我們需要實(shí)現(xiàn)這個(gè)方法,來(lái)檢測(cè)上傳的合法性
:before-upload=“beforeUploadHandle”
- 上傳時(shí)需要攜帶參數(shù)
需要上傳的數(shù)據(jù)文件以及參數(shù)在這里來(lái)處理添加
:http-request=“handleUploadForm”
- 檢測(cè)添加文件是否超過(guò)限制
:on-exceed=“handleExceed”
手動(dòng)上傳
其中的upload對(duì)應(yīng)于上面的ref=“upload”,我們只需要給按鈕實(shí)現(xiàn)一個(gè)方法執(zhí)行此語(yǔ)句便可以實(shí)現(xiàn)自己點(diǎn)擊上傳
this.$refs.upload.submit();
具體實(shí)現(xiàn)
上傳限制以及上傳之前的校驗(yàn)不贅述,這里給出一個(gè)簡(jiǎn)單的demo。
上傳限制實(shí)現(xiàn)類(lèi)似,只是給出一些提示信息,file便是我們上傳的文件。
beforeUploadHandle(file) {
if (
file.type !== "image/png" &&
file.type !== "image/jpeg"
) {
this.$message.error("只支持.jpg、.jpeg、.jpe、.png文件!");
return false;
}
},攜帶參數(shù)
handleUploadForm(param) {
console.log(this.pid)
let thisInfo = this
let formData = new FormData()
// 在formData中加入我們需要的參數(shù)
formData.append('file', param.file)
formData.append('id', this.pid)
// 向后端發(fā)送數(shù)據(jù)
thisInfo.$axios.post('api/user/update_Info/', formData).then((res) => {
if (res.status === 200) {
thisInfo.$message.success('修改信息成功')
} else {
thisInfo.$message.success('修改信息失敗')
}
thisInfo.formFileList = []
thisInfo.uploadFormFileList = []
})
}element-ui上傳文件攜帶參數(shù)到后臺(tái)接收
前端

數(shù)據(jù)

后臺(tái)

注意這里要對(duì)應(yīng),接收的不是mydata,而是具體的值

總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
element多個(gè)table實(shí)現(xiàn)同步滾動(dòng)的示例代碼
本文主要介紹了element多個(gè)table實(shí)現(xiàn)同步滾動(dòng),文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-09-09
VUE插件vue-treeselect的使用及說(shuō)明
這篇文章主要介紹了VUE插件vue-treeselect的使用及說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。2023-07-07
Vue?ElementUI?table實(shí)現(xiàn)雙擊修改編輯某個(gè)內(nèi)容的方法
在實(shí)現(xiàn)表格單元格雙擊編輯功能時(shí),需使用@cell-dblclick事件來(lái)觸發(fā)雙擊操作,將單元格切換為input輸入框,通過(guò)ref引用和綁定失焦及回車(chē)事件來(lái)確認(rèn)編輯,同時(shí),需要處理編輯數(shù)據(jù)的更新和方法邏輯的完善2024-09-09
vue jsx 使用指南及vue.js 使用jsx語(yǔ)法的方法
這篇文章主要介紹了vue jsx 使用指南及vue.js 使用jsx語(yǔ)法的方法,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-11-11
vite+vue3代碼風(fēng)格校驗(yàn)及格式化方式
這篇文章主要介紹了vite+vue3代碼風(fēng)格校驗(yàn)及格式化方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-03-03
手把手搭建安裝基于windows的Vue.js運(yùn)行環(huán)境
手把手教大家搭建安裝基于windows的Vue.js的運(yùn)行環(huán)境,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-06-06
Vue動(dòng)態(tài)組件實(shí)現(xiàn)異常處理方法
Vue3動(dòng)態(tài)組件怎么進(jìn)行異常處理?下面本篇文章帶大家聊聊Vue3 動(dòng)態(tài)組件異常處理的方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)吧2023-02-02

