Javascript TypeError:无法调用方法';toArray';在node.js中聚合mongo时的未定义值

Javascript TypeError:无法调用方法';toArray';在node.js中聚合mongo时的未定义值,javascript,node.js,mongodb,aggregation-framework,Javascript,Node.js,Mongodb,Aggregation Framework,在node.js中执行聚合时,我遇到以下错误 错误:TypeError:无法调用未定义的方法“toArray” doctorsCollection.aggregate([ {$project:{"treatments._id":1, "treatments.price":1}}, {$unwind:"$treatments"}, {$match:{"treatments._id": parseInt(treatments[i])}}, {$sort:{"tre

在node.js中执行聚合时,我遇到以下错误

错误:TypeError:无法调用未定义的方法“toArray”

doctorsCollection.aggregate([ 
    {$project:{"treatments._id":1, "treatments.price":1}},
    {$unwind:"$treatments"},
    {$match:{"treatments._id": parseInt(treatments[i])}}, 
    {$sort:{"treatments.price":-1}}, 
    {$limit:1} 
]).toArray(function(err, result) {
    console.log(err);
});
我不知道发生了什么事。任何帮助都将不胜感激。谢谢

对于node.js MongoDB驱动程序,该方法不会返回游标,除非指定将游标作为选项返回。默认情况下,它将返回
null
,因此
.toArray
方法不起作用


有几种方法可以处理它,文档中提供了大量的示例。在您的情况下,您可以添加
{cursor:{batchSize:1}}
作为
.aggregate
的第二个参数,它将起作用。

在驱动程序的某些版本之前,或者如果您没有指定使用光标作为选项,则
.aggregate
方法不会返回光标。直接传递回调以获取结果。