NodeJS,从异步等待中获取返回值
Posted
技术标签:
【中文标题】NodeJS,从异步等待中获取返回值【英文标题】:NodeJS, get return value from async await 【发布时间】:2018-06-30 17:24:13 【问题描述】:我有一个使用猫鼬的异步等待函数:
const createModelB = async (id) =>
try
let user = await User.findOne(id: id);
if (user)
let modelB = new ModelB( user_id: user.id );
modelB = await scrum.save();
return modelB;
return null;
catch (err)
console.error(err);
return null;
;
现在我从其他地方调用这个函数:
let modelB = createModelB(123);
console.log(modelB);
控制台没有输出模型字段,而是返回给我:
Promise <pending>
我错过了什么?
【问题讨论】:
【参考方案1】:我认为会是
const createModelBInstance = async () =>
let modelB = await createModelB(123);
console.log(modelB);
createModelBInstance();
只要异步函数返回值,您就必须对它们调用等待,并且应该包装在另一个异步函数中。
【讨论】:
以上是关于NodeJS,从异步等待中获取返回值的主要内容,如果未能解决你的问题,请参考以下文章
无法从异步函数获取返回值,等待未按预期工作(Vue API 服务)