乐趣区

关于javascript:记录Nodejs异步碰到的问题

记录 Nodejs 异步碰到的问题

须要先将订单 id 查出,再依据订单 id 查问订单详情

 public async queryOrder() {
    const sql = `select id, total from tbl_orderlines`;
    const res = await this.app.mysql.query(sql);
    const {ctx} = this;
    async function awaitTest() {
        // 使用到 promise.all 办法,顺次将 map 失去的 promise 获取值
      await Promise.all(res.map(async item => {item.orderlines = await ctx.service.test.queryDetails(item.id);
        return item;
      }));
    }
    await awaitTest();
    return res;
  }
退出移动版