为了账号安全,请及时绑定邮箱和手机立即绑定

如何在js的for循环里按顺序执行异步请求

/ 猿问

如何在js的for循环里按顺序执行异步请求

39sakuchan 2019-09-17 16:18:24

最近在做WX小程序,有个文章评论页面,下面的显示的评论一次向服务器只能请求10条 请求数据的时候要传个page=1这样的参数 现在有个需求是我知道了总的评论数量比如是32 就是要请求4次 我要一次显示出所有的评论 

我现在是这样写的:

this.data.repDetailInfo = [] //先把data中要循环到页面评论数组 设为空
for(let i=1;i<=4;i++){ //利用for循环向服务器请求1至4页的数据
server.get(url.rep_list, {
page:i
}).then((res) => {
//返回的结果是一个数组
 this.setData({
//将新的数组加到data里旧的数组里,页面也随之更新出所有的评论
repDetailInfo: res.concat(this.data.repDetailInfo)
 })
})

我按照这样写完可以获得所有评论 但4组评论顺序不固定 有时候是对的 有时候是乱的 想问下有没有什么办法能让请求的数组按顺序拼接好,谢谢大神指点下

查看完整描述

1 回答

?
橋本奈奈未

用Promise.all

另外,为什么服务器不支持传参数来决定要查询几条。最好是一次请求的。

查看完整回答
反对 回复 2019-09-17

添加回答

回复

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信