[英]Mongoose/MongoDB - How to use promise with aggregate queries
我試圖通過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
})
我得到這個錯誤TypeError:無法讀取未定義的屬性'readPreference'
當回調的函數簽名不是函數時,以前會發生這種情況(錯誤,文檔){...
如果我使用Aggregators的回調,它可以工作,但我不想鏈接回調/查詢,並認為這樣會更有效。
我發現這個Mongoose聚合游標承諾
但想知道這是否可能以更簡單的方式使用原生承諾。 我也不想像上面的答案中所解釋的那樣迭代光標。
var allDone = Promise.all(result1,result2)
本來應該
var allDone = Promise.all([result1,result2])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.