导入车辆白名单excel表格,直接使用 <input type="file"/> 然后将拿到的数据提交给后台,结果后台接收为空,且浏览器显示file:[object fileList],正确应该是ile:(binary);
html代码
<input type="file" @change="getInput()" id="whiteFile" accept=".xls"/>
获取文件代码
getInput(){
//this.filelist = document.getElementById("whiteFile").files 浏览器显示数据格式为
//[object fileList]
this.filelist = document.getElementById("whiteFile").files[0];
//这里files后面一定要加[0],否则传送的文件格式就是[object,fileList],后台接收不到
this.fileName = this.filelist.name;
},
发送请求代码
async importData(){
var formData = new FormData(); //注意这里必须使用 FormData 对象
formData.append("file",this.filelist);//必须使用append方法来添加key 和 value
//如果是多个文件使用循环一个一个的添加,console.log(formData)无法查看添加的数据,需要用
//formData特定方法来获取,FormData.get,FormData.getAll,FormData.keys
if (formData.getAll("file").length != 0) { //如果formData中存在文件 、发送请求
let [err, res] = await this.$common.awaitWrap(
this.$service.$ajax("/device/signo/importCarWhiteList",formData)
);
if (err) return;
if(res.code==1000){
this.$message({
message: "导入成功!",
type: "success",
});
}
}
},