壹壹得贰ぺ 2023-08-04 11:15 采纳率: 81.1%
浏览 9
已结题

关于异步请求的问题,如何解决?

 loacSaveJava() {
      const masterId = this.$route.query.uuid;
      const { viewList } = this;
      let queryBody = {};
      viewList.forEach((ele, i) => {
        if (i == 0) {
          queryBody = {
            uuid: ele.viewInfo.uuid,
            version: ele.viewInfo.version,
            pageProperty: ele.viewInfo.pageProperty,
            baseProperty: ele.viewInfo.baseProperty,
          }
        } else {
          queryBody = {
            kanBanId: ele.kanBanId,
            pageId: masterId,
            pageProperty: ele.viewInfo.pageProperty,
            baseProperty: ele.viewInfo.baseProperty,
          }
        }

        this.$_api.kanbanApi
          .Post({
            url: "KanbanItem/updateconfig",
            data: queryBody,
          })
          .then((res) => {
            this.viewList[i].viewInfo = res.data
          });

      })

    },

这个请求接口,才能先执行的时候使用 i不等于0里面的参数,最后一次在执行的时候才用I等于0里面的参数

  • 写回答

4条回答 默认 最新

  • 发狂精灵 2023-08-04 11:31
    关注

    async结合await 先执行所有i不为0的

    async loacSaveJava() {
                const masterId = this.$route.query.uuid;
                const {
                    viewList
                } = this;
                let queryBody = {};
                viewList.filter((item, i)) => {
                    return i!= 0
                }).forEach((ele, i) => {
                queryBody = {
                    kanBanId: ele.kanBanId,
                    pageId: masterId,
                    pageProperty: ele.viewInfo.pageProperty,
                    baseProperty: ele.viewInfo.baseProperty,
                }
                await this.$_api.kanbanApi
                    .Post({
                        url: "KanbanItem/updateconfig",
                        data: queryBody,
                    })
                    .then((res) => {
                        this.viewList[i].viewInfo = res.data
                    });
            })
            viewList.filter((item, i)) => {
                return i== 0
            }).forEach((ele, i) => {
            queryBody = {
                uuid: ele.viewInfo.uuid,
                version: ele.viewInfo.version,
                pageProperty: ele.viewInfo.pageProperty,
                baseProperty: ele.viewInfo.baseProperty,
    
            }
            await this.$_api.kanbanApi
                .Post({
                    url: "KanbanItem/updateconfig",
                    data: queryBody,
                })
                .then((res) => {
                    this.viewList[i].viewInfo = res.data
                });
        })
        }
    
    
    
        },
    
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

问题事件

  • 系统已结题 8月14日
  • 已采纳回答 8月6日
  • 创建了问题 8月4日