記錄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;
}