【问题标题】:Returned aggregated result as an array : mongodb以数组形式返回聚合结果:mongodb
【发布时间】:2013-09-09 00:29:11
【问题描述】:

我的 db.js 包装器库中有这个函数用于 mongodb:

findAllSorted: function(name, sortBy, callback) {
  db.createCollection(name, function(err, collection) {
    collection.aggregate([{$sort: sortBy}], function(err, result) {
      console.log(result); // I want to return result as an array.
    });
  });
},

我想通过回调将result 作为数组返回。我该怎么做?例如,我使用db.findAllSorted('quotes', {unitprice: -1}, callback); 调用此函数,据我所知,它应该以单价从高到低的降序返回我的股票报价列表。

谢谢。

【问题讨论】:

    标签: javascript arrays node.js mongodb


    【解决方案1】:

    collection.aggregate(query, callback) 将结果作为数组返回。在上面的函数中,您需要做的就是调用回调。假设您也想让函数调用者处理错误:

    findAllSorted: function(name, sortBy, callback) {
        db.createCollection(name, function(err, collection) {
            collection.aggregate([{$sort: sortBy}], function(err, result) {
                callback(err, result);
            });
        });
    },
    

    【讨论】:

    • 非常感谢。我试试看。
    • 按预期工作。再次感谢。
    猜你喜欢
    • 2021-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-20
    • 2015-11-26
    • 1970-01-01
    • 2019-01-16
    • 1970-01-01
    相关资源
    最近更新 更多