NodeJS,从异步等待中获取返回值

D先生

我有一个使用猫鼬的异步等待函数:

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>}

我错过了什么?

Akshay

我认为这将是

const createModelBInstance = async () => {
 let modelB = await createModelB(123);
 console.log(modelB);
}

createModelBInstance();

只要异步函数返回值,就必须对其调用await,并且应将其包装在另一个异步函数中。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章