Nar*_*mar 2 javascript mongoose mongodb node.js
我试图通过mongoose对MongoDB中的2个不同集合执行2个查询,然后将它们的结果组合成REST API响应.
例:
var result1 = Model1.aggregate([<operations here>]).exec()
var result2 = Model2.aggregate([<operations here>]).exec()
var allDone = Promise.all(result1,result2)
allDone.then(function(data1,data2){
//Do something with both data
})
Run Code Online (Sandbox Code Playgroud)
我得到这个错误TypeError:无法读取未定义的属性'readPreference'
当回调的函数签名不是函数时,以前会发生这种情况(错误,文档){...
如果我使用Aggregators的回调,它可以工作,但我不想链接回调/查询,并认为这样会更有效.
我发现这个Mongoose聚合游标承诺
但想知道这是否可能以更简单的方式使用原生承诺.我也不想像上面的答案中所解释的那样迭代光标.
var allDone = Promise.all(result1,result2)
Run Code Online (Sandbox Code Playgroud)
本来应该
var allDone = Promise.all([result1,result2])
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2658 次 |
| 最近记录: |