记录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;
}
发表回复