我一起使用vue.js和sails.js,我需要创建一个带有图片和其他文本值的产品,我从整个表单中创建了一个formData对象,并向其中添加了一些数据。当我倾向于注销数据时,它并不为空,但是当我使用req.body
或req.params
时,它显示为空对象。
我的代码如下:
var form = document.querySelector('form');
var formData = new FormData(form);
formData.append('owner', cid);
formData.append('name', this.name);
formData.append('slug', this.slug);
formData.append('description', this.editorData);
formData.append('tags', this.tags);
formData.append('categories', this.categories);
formData.append('stock', this.stock);
formData.append('price', this.price);
for (let [key, value] of formData.entries()) {
console.log(key, value);
}
axios.post(API + 'product/new', formData)
.then(function(response) {
swal("ok",{
icon: "success",
button: false,
});
})
.catch(function(error) {
swal("not ok",{
icon: "error",
button: false,
});
console.log(error.response);
// remain silent
});
答案 0 :(得分:0)
我已经解决了3天了,所以我现在就解决了这个问题。 解决方案很简单,SailsJs req.body对象将只读取您的formdata对象或您传递给它的任何对象,只要它不位于文件对象之后即可(如果有的话)。
为更好地理解,请查看他们在req.body here上的文档