微信小程序代码执行顺序问题

发布网友

我来回答

2个回答

热心网友

你代码的执行顺序有问题吧?看不到完整代码,帮不到你。追问这个就算是完整代码了,现在程序问题就是for循环里面的代码还没执行完,就执行var serverImgStr=serverImg.join("|")这行代码了,造成serverImg空值,serverImg的值是要等for里面的代码执行完了,才有值

追答这个肯定不行,因为你在for循环里用了异步请求来获取数据,而for循环的执行速度比里面的异步请求快太多,每一次循环时根本来不及获取到res.data数据就已经进入下一次循环了,所以serverImg这个数组在for循环结束后还是空值,导致了后续的报错。
你可以创建一个循环定时器,隔一定时长(例如几十毫秒)就检测serverImg这个数组的长度是否等于imglist的长度,直到两者相等,再清除定时器,执行下面的join方法。

热心网友

把var变量改为let变量试试

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com