Javascript MongooseJS-在执行计数后再执行查找后返回查询

Javascript MongooseJS-在执行计数后再执行查找后返回查询,javascript,node.js,mongoose,mongoose-plugins,Javascript,Node.js,Mongoose,Mongoose Plugins,我希望获得集合中对象的数量,然后使用该数量执行查找。当前代码如下所示: function() { TestModel.count({}, function(err, num) { if (err) { return callback(err, undefined); } options.skip = Math.max(0, Math.floor((num - limit) * Math.random())); options.limit = li

我希望获得集合中对象的数量,然后使用该数量执行查找。当前代码如下所示:

function() {
  TestModel.count({}, function(err, num) {
    if (err) {
      return callback(err, undefined);
    }

    options.skip = Math.max(0, Math.floor((num - limit) * Math.random()));
    options.limit = limit;

    TestModel.find(conditions, fields, options).exec(callback);
  });
}

其中testModel是猫鼬模型。这真是太棒了!但是,如果上面的回调为空,我还希望能够返回整个查询,包括count pre-execution,以便用户可以向管道附加更多选项,例如populate。我怎样才能做到这一点?

这是什么?这是一个Mongoose模型吗?是的,很抱歉-让我编辑这个问题以使其更清楚。返回整个查询(包括预执行计数)的包含计数部分是什么意思?您是指count查询的num结果吗?鉴于上述实现,我需要count的结果来运行find查询。我想要的是能够从函数的作用域返回一个可执行查询,所以我也不想立即执行count,因为它是异步的。我看不到一种方法可以让它工作。最好总是使用回调函数,并让调用者根据需要填充结果文档中的引用。