elementui 上传文件
1. utils/upload.js
import axios from 'axios' import { getToken } from '@/utils/auth' const baseUrl = process.env.VUE_APP_BASE_API export function uploadFunc(str, formData, resolve) { var url = baseUrl + str axios({ url: url, method: 'POST', data: formData, timeout: 0, //无超时 headers: { 'Authorization': 'Bearer ' + getToken(), 'Content-Type': 'multipart/form-data' } }).then(res => { resolve(res); }) }
2. .vue
upload class="upload-button" action="none" :limit="1" :file-list="fileList" :auto-upload="false" :before-upload="beforeUpload" :on-change="setUploadData" accept=".xlsx,.xls" > "small" type="primary">点击上传 "tip" class="el-upload__tip">只能上传excel文件
import { uploadFunc } from "@/utils/upload";
//文件上传
setUploadData(file) {
this.uploadFile = file;
this.uploadUrl = URL.createObjectURL(this.uploadFile.raw);
this.submitUpload();
},
//上传
submitUpload() {
let formData = new FormData();
formData.append("examId", this.rowdata.examId);
formData.append("file", this.uploadFile.raw);
uploadFunc("/examresult/checkresult/importData?", formData, (ret) => {
if(ret.status == 200){
this.msgSuccess('导入成功');
this.drawbox(this.rowdata);
}
});
},
over