【问题标题】:Mongoose in function doesn't return anything函数中的猫鼬不返回任何东西
【发布时间】:2012-05-24 09:55:40
【问题描述】:

我正在尝试查询我的数据库,但由于某种原因,当我知道我的数据库中有 3 个东西时,我从未得到结果。我做了这个功能:

function toJson()
{

  var test = [];

  async.series({
    rooms : function() { return Room.find(); }
  }
  , function(err, results) {

    test = results.rooms;

  });

  return test;

}

这是怎么来的?我猜这与猫鼬他的方法(搜索)是异步的有关..

提前致谢。

【问题讨论】:

    标签: node.js mongodb mongoose


    【解决方案1】:

    toJson 立即返回,但 return test; 立即发生。你需要让toJson 进行回调——你甚至不需要在这里使用async.series

    function toJson(callback) {
        Room.find(function(err, results) {
            callback(results);
        });
    }
    

    这会做你想做的事——但你不应该像你提议的那样忽略err

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-10
      • 2019-09-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-21
      • 1970-01-01
      相关资源
      最近更新 更多