javascript - 異步循環(huán)查詢嵌套該怎么實(shí)現(xiàn)
問題描述
假設(shè)有已經(jīng)存在的學(xué)生字典數(shù)組,學(xué)生有姓名和所在教室號,先查詢符合條件的學(xué)校,便利學(xué)生字典數(shù)組,創(chuàng)建學(xué)生對象賦值姓名、學(xué)校和班級,但是班級需要先查詢教室的位置來確定,這樣就出現(xiàn)循環(huán)查詢了?這樣的問題該怎么解決呢?
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:可以使用異步函數(shù)的嵌套,async/await node.js版本>7.10.0


相關(guān)文章:
1. boot2docker無法啟動(dòng)2. docker-compose中volumes的問題3. node.js - antdesign怎么集合react-redux對input控件進(jìn)行初始化賦值4. docker安裝后出現(xiàn)Cannot connect to the Docker daemon.5. 關(guān)于docker下的nginx壓力測試6. java - SSH框架中寫分頁時(shí)service層中不能注入分頁類7. dockerfile - 為什么docker容器啟動(dòng)不了?8. 關(guān)docker hub上有些鏡像的tag被標(biāo)記““This image has vulnerabilities””9. 老師,按tab鍵不起作用怎么回事10. mac里的docker如何命令行開啟呢?

網(wǎng)公網(wǎng)安備