javascript - 異步循環查詢嵌套該怎么實現
問題描述
假設有已經存在的學生字典數組,學生有姓名和所在教室號,先查詢符合條件的學校,便利學生字典數組,創建學生對象賦值姓名、學校和班級,但是班級需要先查詢教室的位置來確定,這樣就出現循環查詢了?這樣的問題該怎么解決呢?
var studentArr = new Array({’name’: ’a’,’room’:’101’},{’name’: ’b’,’room’:’102’},{’name’: ’c’,’room’:’103’},{’name’: ’d’,’room’:’104’});var objects = new Array();var schoolQuery = new AV.Query(Shcool);schoolQuery.equalTo(’name’,’**高中’);schoolQuery.find().then(function(schoolReuslts){ for (var i = 0; i < studentArr.count; i ++){var student = studentArr[i];var object = new Student();object.set(’name’,student[’name’]);object.set(’room’,student[’room’]);object.set(’school’,schoolReuslts[0]);var classQuery = new AV.Query(Class);classQuery.equalTo(’school’,schoolReuslts[0]);classQuery.equalTo(’room’,student[’room’]);classQuery.find().then(function(classResults){object.set(’class’,classResults[0]);objects.push(object); }, function(error){console.log(error); });} return AV.Object.saveAll(objects);}).then(function(objects){ //全部保存成功 }}).catch(function(error) { console.log(error);
問題解答
回答1:可以使用異步函數的嵌套,async/await node.js版本>7.10.0
相關文章:
1. javascript - 在 vue里面用import引入js文件,結果為undefined2. php - 微信開發驗證服務器有效性3. javascript - 我的站點貌似被別人克隆了, google 搜索特定文章,除了域名不一樣,其他的都一樣,如何解決?4. javascript - js setTimeout在雙重for循環中如何使用?5. 求救一下,用新版的phpstudy,數據庫過段時間會消失是什么情況?6. 小程序怎么加外鏈,語句怎么寫!求救新手,開文檔沒發現7. python沒入門,請教一個問題8. html - 爬蟲時出現“DNS lookup failed”,打開網頁卻沒問題,這是什么情況?9. java - idea創建多modules項目后,tomcat啟動失敗10. php - mysql 模糊搜索問題
