vue for循环中使用axios无法正常获取数据
vue for循环中使用axios无法正常获取数据

vue for循环中使用axios无法正常获取数据

需求:有个数组,这个数组里存的是ID,通过这个ID获取ID的数据

解决思路:for循环内使用axios请求数据并赋值到数组

问题:赋值数组在循环外console为空白

原因:axios属于异步操作,for属于同步操作,axios还没处理完,for就结束了,自然console里没有任何数据了

解决方案:

async go(type, event) {

for(var i=0;i<this.count.length;i++){

await this.$axios

.post("/get", {

id: this.count[i],

})

.then((res) => {

this.data=res.data.product;

});

}

}

async告诉go方法里面存在异步的操作,await放在异步操作前面,意思是等待该异步完成才会继续后面的操作

https://blog.csdn.net/BenChiZhuBaDaoWang/article/details/123070361

发表回复

您的电子邮箱地址不会被公开。