之前问了一个循环请求接口的问题,循环请求接口是成功的,
oneKeyGet(){
let queue=this.dataTable.forEach(item=>{
return new Promise(resolve=>{
this.goToDetail(item).then(res=>{
resolve(res)
// this.goOn(item);
})
})
})
}
但是这是一个动态的表头,所以当数据被请求到之后,得将表头拎出来,并且是将搜索到的结果拼在相同name之后,这种循环套循环,数据量(目前是4万条)一大页面就卡死了,之后数据量会更大
goOn(value){
this.detailInfo=[];
for(var i=0,len=this.detail.length;i<len;i++){
var timerList=this.detail[i].vos.split(",");
var timerObj=[];
for(var j=0;j<timerList.length;j++){
var timerArr=timerList[j].split("-");
if(timerArr.length==3 && timerArr[1]==""){
timerArr[1]="-"+timerArr[2]
}
timerObj[timerArr[0]]=timerArr[1];
}
this.detailInfo.push(Object.assign({},this.detail[i],timerObj));
}
var lastOne="";
this.newTable.forEach((item,index)=>{
if(value.equipmentName==item.equipmentName){
lastOne=index;
}
});
this.newTable.splice(lastOne+1,0,this.detailInfo);
this.newTable=this.newTable.flat(Infinity);
},
所以想请教一下,如何在这个goOn方法彻底结束之后再继续oneKeyGet()里的promise循环下一个请求接口的操作
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…