解析查询不返回结果

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了解析查询不返回结果相关的知识,希望对你有一定的参考价值。

我已经定义了一个解析云代码调用getChat(如下所示),但是当我运行它时,它不会返回任何结果

Parse.Cloud.define("getChat", function(request, response) {
  var allchat = [];
  var query = new Parse.Query("chat");
  query.find().then(function(results) {
    console.error("test"); //nothing in console
    console.error(results.length); //nothing in console
    for (var i = 0; i < results.length; ++i) {
      for(var iii = 0; iii<results[i].get("limitleft").length; iii+=2){
        if(results[i].get("limitleft")[iii] == request.params.user){
          allchat.push(results[i]);
        }
      }
    }
  });
  response.success(allchat);
});
答案

Query.find()返回一个Promise。 “.then”将回调函数附加到该承诺。当Find完成时,它会执行回调。但是,您在启动查找后立即调用了response.success()。结果尚未交付。调用response.success()有效地取消了find,因为getChat已经通过调用response.success()完成了。

将调用响应放在块内的response.success()中!

-Bob

以上是关于解析查询不返回结果的主要内容,如果未能解决你的问题,请参考以下文章

使用Retrofit2解析XML。多个结果列表不起作用

为啥此代码片段返回意外结果?

如何跳过查询条件片段中的空对象?

片段视图返回后执行的 Firebase 查询

解析 json 文件会返回不需要的结果

MyBatis框架中的条件查询!关键字exists用法的详细解析