mongodb 的节点 js 驱动程序 findAndModify

nodejs driver for mongodb fndAndModify

我有以下代码:

var conditions = {_id: playerID, 'gameStats.GameID' : gameID},
    update = {$inc: {'gameStats.$.wins' : 1}},
    options = {new : true};

player.findAndModify(conditions, update, options, function (err, doc) {
    if (err) { 
        console.log("updated failed")
        return res.sendStatus(300);     
}

当我执行它时返回错误消息"TypeError: undefined is not a function",我真的无法弄清楚是什么问题。有人可以帮忙吗?

问题是您正在使用 "mongoose" 而没有 .findAndModify() 方法。使用 .findOneAndUpdate() 代替:

player.findOneAndUpdate(conditions, update, options, function (err, doc) {
    if (err) { 
        console.log("updated failed")
        res.sendStatus(300);     
    } else {
      // do things that are happy with the response
    }
});