async/await异步问题

需求:在页面加载时,同时发送两个请求,代码如下:

        async initData(id){
            //获取路线栏目数据
            let res1 = await getPathCategory(id);
            this.categoryList = res1.result.list;

            //获取路线栏目对应的列表数据
            let res2 = await getPathListData(id,this.category,this.pageSize,this.pageNo);
            if(res2.result.list.length>0){
                this.pathList = [...res2.result.list];
                this.loading = false;
            }
        },

问题:从上一个页面进入当前页面,只获取了第一个请求的数据,再次刷新当前页面时,数据才会一起出来

阅读 1.8k
2 个回答

试试下面的写法,两个函数都需要执行完:

let resAll = await Promise.all(getPathCategory(id), getPathListData(id,this.category,this.pageSize,this.pageNo));

建议检查一下整体逻辑,不太可能这里出问题

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题