亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

返回從循環中調用的DB查詢中檢索的數據時發出的問題

返回從循環中調用的DB查詢中檢索的數據時發出的問題

叮當貓咪 2019-07-08 12:57:29
返回從循環中調用的DB查詢中檢索的數據時發出的問題我在循環中進行多個MongoDB查詢。但是當我簡單地使用返回來發送數據時,它只是返回未定義的結果,而不是等待所有DB請求的結果。我也試著用q.mode,但同樣的問題。代碼:var getPrayerInCat = function(data){     var result ;     var finalData = [];     if(data.length >0){              data.forEach(function(data2){                  var id= data2.id;                  Prayer.find({prayerCat:id},function(err,prayer){                      var deferred = Q.defer()                      if (err) { // ...                          console.log('An error has occurred');                          // res.send(err);                          result= finalData = err                     } else {                          if(!prayer){                              // console.log(data2.id+'--0');                              data2.prayersCount = 0;                              result = deferred.resolve(finalData.push(data2))                          } else {                              // console.log(data2.id+'--'+prayer.length);                              data2.prayersCount = prayer.length;                              // console.log(prayer)                              result =  deferred.resolve(finalData.push(data2))                          } // else for data forward                      }                      deferred.promise;                  })                 // deferred.resolve(finalData);              })              /*if(finalData.length > 0) { return finalData;}*/         }}未定義返回finalData。
查看完整描述

3 回答

?
莫回無

TA貢獻1865條經驗 獲得超7個贊

getPrayerCat(‘).然后(函數(數據){getPrayerInCat(數據)}).然后(函數(Data 2){sole.log(Data 2)})var getPrayerInCat=function(Data){var結果;var finalData=[];if(data.ength>0){var答應=data.map(GetPrayerCount);返回Q.all(許諾);} 

查看完整回答
反對 回復 2019-07-08
  • 3 回答
  • 0 關注
  • 679 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號