Javascript Parse.Cloud.run无法识别变量
我正在尝试使用mongodb将我的网站链接到解析服务器。它运行得很好,并且保存得很好,所以我可以在parse dashboard和mlab中看到它。我试图添加一个新变量,结果把事情搞砸了。运行此get-run时,它会抛出一个错误,说明Parse.Cloud.run行中未定义地址Javascript Parse.Cloud.run无法识别变量,javascript,mongodb,parse-server,Javascript,Mongodb,Parse Server,我正在尝试使用mongodb将我的网站链接到解析服务器。它运行得很好,并且保存得很好,所以我可以在parse dashboard和mlab中看到它。我试图添加一个新变量,结果把事情搞砸了。运行此get-run时,它会抛出一个错误,说明Parse.Cloud.run行中未定义地址 document.getElementById("btn").addEventListener("click", function(){ var name = document.getElementById('in
document.getElementById("btn").addEventListener("click", function(){
var name = document.getElementById('inp1').value;
var address = document.getElementById('inp2').value;
var city = document.getElementById('inp3').value;
var state = document.getElementById('inp4').value;
var zipcode = document.getElementById('inp5').value;
var Apartment = Parse.Object.extend("Apartment");
var apartment = new Apartment();
apartment.set("name", name);
apartment.set("address", address);
apartment.set("city", city);
apartment.set("state",state);
apartment.set("zipcode", zipcode);
apartment.save(null, {
success: function(apartment) {
// Execute any logic that should take place after the
object is saved.
alert('New object created with objectId: ' + prod.id);
},
error: function(error) {
// Execute any logic that should take place if the save
fails.
// error is a Parse.Error with an error code and
description.
alert('Failed to create new object, with error code: ' +
error.description);
}
});
});
Parse.Cloud.run("registerApartment",{"name":name,"address":address,"city":
city, "state": state,"zipcode":zipcode,"map":map}, {
success: function(savedApartment){
console.log(savedApartment);
}, error: function(error){
console.log(error);
}
})
提前谢谢你
云代码
Parse.initialize('#');
Parse.serverURL = 'http://localhost:1337/parse';
Parse.Cloud.define("registerApartment", function(req,res){
var params = request.params;
var name = params.name;
var address = params.address;
var city = params.city;
var state = params.state;
var zipcode = params.zipcode;
var Apartment = Parse.Object.extend("Apartment");
var apartment = new Apartment();
apartment.set("name", name);
apartment.set("address", address);
apartment.set("city", city);
apartment.set("state",state);
apartment.set("zipcode", zipcode);
apartment.set("map", map);
console.log(apartment);
apartment.save(null, {
success: function(savedApartment){
console.log("Succesfully saved bitch");
response.success(savedApartment);
}, error: function(error){
console.log(error);
response.error(error);
}
})
});
你能仔细检查一下你定义云代码的服务器吗 您的代码应该是这样的:
Parse.Cloud.define("registerApartment", function(req,res){
---your codes---
});
确保Parse.Cloud.run()正在调用您在服务器上定义的内容
编辑:
尝试使用此代码而不是当前代码:
Parse.Cloud.run("registerApartment",{name:name,address:address,city:
city, state: state,zipcode:zipcode,map:map}, {
success: function(savedApartment){
console.log(savedApartment);
}, error: function(error){
console.log(error);
}
})
我所做的只是在解析参数时删除引号。这应该很好:)是的,我的语法中已经有了。不知道怎么称呼它。我获取了参数并将变量设置为新的公寓对象。在我看来,您输入的地址无效,或者在您的云代码中,您没有从发送的值中检索/定义地址。可以粘贴你的云代码让我看一下吗?在我用document.getElementById(“”)设置变量之后,我将console.log这些变量,结果成功了,但仍然显示了未定义的地址。我的公寓出了问题。请尝试在云代码和前端中注释出您的地址,看看是否有其他值未定义。我刚刚这么做了,现在city未定义。我相信这是我在公寓对象中设置它们的语法。变量
address
是否存在于您调用Parse.Cloud.run的上下文中?可能您提到的错误消息指的是传递给函数的参数,而不是服务器地址。是的,我将“inp#”连接到html文件中的输入DOM标记。在我使用document.GetElementById后,我将console.log记录它们,它们返回,但仍然返回地址未定义。我使用了github示例解析,在main.js中,我使用params.name、params.address等设置了所有参数