1. 程式人生 > 其它 >element-ui upload自定義formdata上傳檔案和引數

element-ui upload自定義formdata上傳檔案和引數

  <el-upload list-type="text" action="" :http-request="HandleHttpRequestDescFile" :on-remove="handleRemoveDescFile" :file-list="this.fileList" ref="upload">             <el-button size="small" type="primary" title="需求附件">點選上傳PBC檔案</el-button> </el-upload>   //上傳     HandleHttpRequestDescFile(a){       let fileName = a.file.name;       let pos = fileName.lastIndexOf(".");       let lastName = fileName.substring(pos, fileName.length);       if (lastName.toLowerCase() !== ".xlsx") {         this.msgError("檔案必須為.xlsx型別")         this.fileList = []         this.form.file = null       } else {         this.fileList = []         this.form.file = a.file         this.fileList.push(a.file)       }     },   //刪除方法     handleRemoveDescFile(file) {       this.fileList = []       this.form.file = null       // if(this.descFile != ''){       //   this.descFile.pop(file);       // }     },   /** 提交按鈕 */     submitForm() {       console.log(this.fileList)       let msg = ''       if(this.form.file == null){         msg = '請上傳PCB檔案!'       }       if( this.form.invCode == ''|| this.form.invCode == undefined || this.form.invCode == null){         msg = '物料編碼不能為空!'       }       if (msg != '') {         this.msgError(msg)             return       }       var formData = new FormData();       formData.append('files',this.form.file);       formData.append('invCode',this.form.invCode);       uploadFile(formData).then(res=>{         if(res.code == 200){           this.msgSuccess("成功");           this.open = false;           this.getList();         }else{           this.$message({ type: 'error', message: res.errmsg });         }       });     },       //上傳 export function uploadFile(data) {     let config = {       headers: {         "Content-Type": "multipart/form-data"       }     }     return request({       url: '/api/smt/record/inv/files',       method: 'POST',       data: data,       headers: config,     })   }