Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/398.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript Parse.Cloud.run无法识别变量_Javascript_Mongodb_Parse Server - Fatal编程技术网

Javascript 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

我正在尝试使用mongodb将我的网站链接到解析服务器。它运行得很好,并且保存得很好,所以我可以在parse dashboard和mlab中看到它。我试图添加一个新变量,结果把事情搞砸了。运行此get-run时,它会抛出一个错误,说明Parse.Cloud.run行中未定义地址

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等设置了所有参数