vuejs循环发送请求等待上一个执行完毕再发送!

其实简单,不要用map就行了!

vuex内

 for (let i = 0; i < arr.length; i++) {
            const v = await dispatch('uploadFile', arr[i]).catch(() => { })
        }

页面内

      var a = 0 // 错误次数超过3次,则跳出循环,直接进入弹窗错误!
        let fail = [] // 失败数组
      let success = [] // 成功数组 一切正常则没用,如果失败则展示成功数目
     for (let i = 0; i < arr.length; i++) {
        const v = await this.tradelogAuto(arr[i]).catch(() => {
          a++
        })
        if (!v) {
          // 如果res.data 为true,则成功,否则失败,失败加入失败列表
          fail.push(arr[i])
        } else {
          success.push(arr[i]) //
        }
        // 如果失败2次以上,则跳出循环,并把后续未执行全部加入失败列表
        if (a > 2) {
          const r = arr.slice(i)
          fail = [...fail, ...r]
          break
        }
      }


相关内容

发表评论

验证码:
点击我更换图片

最新评论