解析查询上的javascript计数方法

解析查询上的javascript计数方法,javascript,parse-platform,pfquery,Javascript,Parse Platform,Pfquery,在Parse的javascript API中,如果没有返回任何对象,count方法是否不会执行任何操作?我正在尝试查询刚刚添加的新表,但似乎无法获得返回结果的查询 var contactObj = Parse.Object.extend("Contact"); var contactQuery = new Parse.Query(contactObj); contactQuery.equalTo("phone", req.body.From); contactQuery.count({

在Parse的javascript API中,如果没有返回任何对象,count方法是否不会执行任何操作?我正在尝试查询刚刚添加的新表,但似乎无法获得返回结果的查询

var contactObj = Parse.Object.extend("Contact");
var contactQuery = new Parse.Query(contactObj);
contactQuery.equalTo("phone", req.body.From);

    contactQuery.count({
      success: function(number) {
        // There are number instances of MyClass.
        console.log("something");
      },
      error: function(error) {
    // error is an instance of Parse.Error.
            console.log("error");
    }
});

在这段代码中,当运行时,不会收到console.logs,但是我调用的封闭方法会打印它已经运行。如果计数为0,则计数不成功或失败?

您缺少response.success和response.error调用,但控制台日志仍在写入。 见下文

运行时,您的确切代码段将在工作站控制台中返回“未调用成功/错误”。 但仍然在parse portal控制台中,您可以看到“某物”输出

本地计算机中的输出分析控制台:

{"code":141,"error":"success/error was not called"}
在日志中输出解析门户

Failed with: success/error was not called
I2015-01-14T09:28:26.174Z] something
我在下面加了两行:

response.success("something success");
response.error("something error");
因此,实际代码如下所示:

}))

输出 工作站控制台:

{"result":"something success"}
解析门户日志:

Result: something success 
I2015-01-14T09:29:54.355Z] something success console

我遇到了一个类似的问题,即没有从成功和错误块调用console.log。这是由于查询后的无限while循环造成的。这种东西-

    var c = 0;
    var query = new Parse.Query("XXXXX");
    query.equalTo("YYYY","abc");
    query.count({
                success: function(count) {
                         c += 1;
                         console.log("success");
                },
                error: function(error) {
                       c += 1;
                       console.log("failure");
                }
                });
   while (c < 1){
   }
   ..........
var c=0;
var query=newparse.query(“XXXXX”);
query.equalTo(“YYYY”、“abc”);
query.count({
成功:功能(计数){
c+=1;
控制台日志(“成功”);
},
错误:函数(错误){
c+=1;
控制台日志(“故障”);
}
});
而(c<1){
}
..........
Node.js是异步的,但也是单线程的。确保没有任何这样的代码块阻碍执行


此外,即使结果数为0,query.count也会成功。

很抱歉,这不清楚,但在该查询下面还有更多查询和推送,在最低级别将调用response.success/response.error。我认为如果我太早执行这些操作,那么执行将在到达下一个代码之前终止。OP中没有任何内容表明此代码正在云中运行,听起来更像是在客户端运行,并且在表为空时出现问题。@BHendricks您可以传递
回调
(或
响应
)函数沿着这条链,例如,
function(req,callbacks){var query=newparse.query(Parse.User);query.containedIn('phoneNumber',request.body.phoneNumbers);query.find(callbacks);}
    var c = 0;
    var query = new Parse.Query("XXXXX");
    query.equalTo("YYYY","abc");
    query.count({
                success: function(count) {
                         c += 1;
                         console.log("success");
                },
                error: function(error) {
                       c += 1;
                       console.log("failure");
                }
                });
   while (c < 1){
   }
   ..........