gpt4 book ai didi

javascript - Ajax 文件上传 Vue.js

转载 作者:搜寻专家 更新时间:2023-10-30 22:25:49 24 4
gpt4 key购买 nike

我正在尝试使用 Vue.js 通过 Ajax 上传文件 - 但是,服务器一直响应说文件需要是图像(它在不使用 ajax 时有效)。我的设置如下:

<input type="file" name="avatar" v-model="profileFormData.avatar">

我的数据是:

profileFormData: {
"name": '',
"email": '',
"avatar": '',
},

我需要为文件上传做些什么吗?

最佳答案

我似乎已经找到了解决办法。首先,我必须从表单元素(以及该表单中的每个元素)中删除 v-model。然后,不要发布 v-model,而是使用 FormData 获取要发送的数据。

这是一个例子:

//Pass the form into a new FormData object
var formData = new FormData(this.el);

//Pass through the object instead of data passed via a v-model
this.vm
.$http[this.getRequestType()](this.el.action, formData)
.then(this.onComplete.bind(this))
.catch(this.onError.bind(this));

关于javascript - Ajax 文件上传 Vue.js,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36909593/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com