我在mongodb的db.js包装器库中有这个函数:
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);
调用此函数,据我所知,应该以最高到最低的单位价格降序返回我的股票报价列表。
感谢。
答案 0 :(得分: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);
});
});
},