如果您阅读了我的代码,那么如果请求提供的ID与文档的Friends
数组中的元素匹配(由于{{1}),您将看到用户未更新运营商)。因此,如果找到用户但未更新,则返回的结果(myDoc,otherDoc)为null。我想仍然得到这两个文件是否已经更新。我检查了mongoose文档,但似乎无法找到解决方案。
$not
编辑:是否有某种mongoose插件对此有用? ....
答案 0 :(得分:0)
如果你想在findOneAndUpdate后添加一个名为new的参数并将其设置为true,那么可以取回更新后的文档,例如。
User.findOneAndUpdate( {
id: req.body.myId, Friends: { $not: { $elemMatch: { id: req.body.id }}}
},{
$addToSet:{Friends:{ id: req.body.id, gender: req.body.gender,emoji: res.locals.myEmoji}}
}, {
new: true
}),