Javascript mongo不会带着承诺返回我的更新对象

Javascript mongo不会带着承诺返回我的更新对象,javascript,mongodb,es6-promise,Javascript,Mongodb,Es6 Promise,有人能帮我理解为什么更新完成后,我的承诺是从Mongo返回原始(预更新)对象吗 为了清楚地说明Mongo正在更新,我可以看到当我直接访问数据库(shell)时,更新似乎在返回dbModel后生效;这没有道理 updateOneEvent: function (req, res) { db.Event.findOneAndUpdate({ _id: req.params.eventId, user: req.session.user._id }, r

有人能帮我理解为什么更新完成后,我的承诺是从Mongo返回原始(预更新)对象吗

为了清楚地说明Mongo正在更新,我可以看到当我直接访问数据库(shell)时,更新似乎在返回dbModel后生效;这没有道理

updateOneEvent: function (req, res) {
    db.Event.findOneAndUpdate({
        _id: req.params.eventId,
        user: req.session.user._id
    }, req.body)
        .then(dbModel => res.json(dbModel))
        .catch(err => res.status(422).json(err));
}

在选项中传递
{returnNewDocument:true}
,它将返回新文档,而不是在更新之前返回文档


有关更多详细信息,请参见

谢谢Willis!我想默认值为false是有意义的,因为我可以访问前端的更新对象。这是有意义的,但它肯定是那些默认值之一,会让每个在mongo上做过任何事情的人都感到困惑