【发布时间】:2016-04-22 04:50:26
【问题描述】:
我正在尝试将从表单中捕获的图片以及其他一些数据上传到我的 Parse 数据库。许多代码是从 Parse Javascript 指南中复制的。名称、价格和描述详细信息上传正常,但图片从不上传。我在日志上得到的是:
添加项目...
项目已成功添加!
项目已成功上传!
按这个顺序...我不确定为什么会发生这种情况,尤其是因为我使用的是整个承诺范式。为什么要在图片上传之前添加项目?为什么这段代码不起作用?
function addItem()
{
console.log('adding item...');
var Item = Parse.Object.extend("FoodItem");
var newItem = new Item();
newItem.set("createdBy", Parse.User.current());
newItem.set("name",$('#itemName').val());
newItem.set("price",parseInt($('#itemPrice').val()));
newItem.set("description",$('#itemDescription').val());
//Upload pic to parse cloud
var fileUploadControl = $("#itemImage")[0];
if (fileUploadControl.files.length > 0)
{
var file = fileUploadControl.files[0];
var name = "photo.jpg";
var parseImage = new Parse.File(name, file);
}
parseImage.save().then
(
function()
{
newItem.set(name,parseImage);
console.log("Image sucessfully uploaded!");
return;
}
).then
(
newItem.save().then
(
function()
{
console.log("Item sucessfully added!")
},
function(error)
{
// there was some error.
alert("Saving item failed with error code " + error.message);
}
)
);
return false;
}
【问题讨论】:
标签: javascript database image parsing upload