Mongoose 解析前返回的findOneAndUpdate方法

Mongoose 解析前返回的findOneAndUpdate方法,mongoose,Mongoose,该方法返回未定义。例如,在findOneAndUpdate解析之前完成 exports.updateMovie = async (movie) => { try { return await Movie.findOneAndUpdate({_id: movie._id}, movie, {upsert: true, new: true}, (err, result) => { return result; });

该方法返回未定义。例如,在
findOneAndUpdate
解析之前完成

exports.updateMovie = async (movie) => {
    try {
        return await Movie.findOneAndUpdate({_id: movie._id}, movie, {upsert: true, new: true}, (err, result) => {
            return result;
        });
    } catch(err) {
        return err;
    }
};
正如前面所说,不带回调的方法返回一个必须执行的查询。因此,要使该方法起作用,它应该如下所示:

exports.updateMovie = async (movie) => {
    try {
        return await Movie.findOneAndUpdate({_id: movie._id}, movie, {upsert: true, new: true}).exec();
    } catch(err) {
        return err;
    }
};