循环获取接口(异步)数据后,再执行后面的代码(控制执行顺序)

   async getData() {
      for (let i = 0; i < 2; i++) {
        await new Promise((resolve, inject) => {
          this.$axios
            .get("https://jsonplaceholder.typicode.com/posts")
            .then((res) => {
               console.log("第一名", res);
               resolve();
            });
        });
      }
      console.log("第二名");
   },
   
    async batchFetchData() {
      for (let i = 0; i < this.rowList.length; i++) {
          if (this.rowList[i].isApply == 1) {
            await this.getTodo1();
          } else {
            await this.getTodo2();
          }
      }
    },
输出:
  // 第一名
  // 第一名
  // 第二名

注意:await 后面可以跟任何js表达式都不会报错,但是,只有当后面跟的是promise对象时,才会解决异步问题,实现同步。

你可能感兴趣的:(javascript,前端,vue.js)