我有一个使用 Mongoose 的异步等待函数:
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>}
我错过了什么?
最佳答案
我认为会是
const createModelBInstance = async () => {
let modelB = await createModelB(123);
console.log(modelB);
}
createModelBInstance();
只要异步函数返回值,您就必须对其调用等待,并且应该将其包装在另一个异步函数中。
关于node.js - NodeJS,从async wait获取返回值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48375499/