vue ajax请求结束再次执行查询方法,vue 如何在循环请求接口中,当请求的方法操作彻底结束后再循下一个...

博客探讨了在处理大量数据(4万条)时,如何避免因循环套循环导致页面卡死的问题。作者提出了一种通过oneKeyGet函数进行循环请求接口的方法,但遇到动态表头展示及数据拼接的挑战。goOn方法中,数据被处理并插入到匹配的表头之后,导致性能下降。寻求解决方案以确保goOn方法结束后才继续下一个接口请求。
摘要由CSDN通过智能技术生成

之前问了一个循环请求接口的问题,循环请求接口是成功的,

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

var timerList=this.detail[i].vos.split(",");

var timerObj=[];

for(var j=0;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循环下一个请求接口的操作

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值