1.使用 vant 组件库中 uploader 文件上传
前言:开发中遇到文件上传,发现用formData传给后台时,后台一直获取不到file文件,然后记录一下,希望能帮助到你。
使用:
<van-uploader v-model="fileList" :after-read="afterRead" :max-count="3" multiple></van-uploader>
注意:请求头设置为
"Content-Type"]= "multipart/form-data"
方法:
data() {
return {
fileList:[]
}
},
methods: {
//设置请求头
setHeader() {
this.headers["Content-Type"] = "multipart/form-data" ;
},
afterRead(file){
// 此时可以自行将文件上传至服务器
var formData = new FormData(); //构造一个 FormData,把后台需要发送的参数添加
for (var i = 0; i < this.fileList.length; i++) {
//注意:这里append进去的是File对象,而不是FileList对象
formData.append("fileList", this.fileList[i].file);
}
const options = {
method: "POST",
url: this.$api.Uploadfile,
headers:this.headers,
data:formData
};
this.$http(options).then(res => {
if (res.data.code === 200) {
console.log("上传成功",res.data)
}
})
},
}