嘿,我正在尝试允许用户在数组中更新他们的电子邮件。如果他们点击编辑,我想更新他们的特定电子邮件。我有旧值和新值,我知道我可以做一个拉和推,但想看看我是否可以更有效地做到这一点,将值与 $elemMatch 匹配,然后 $set 与新值匹配?我尝试了位置运算符,但它不适用于数组中没有键关系含义字段x的值:值x ...这是我的尝试,不知道该怎么做?欢迎其他方向。
User.findByIdAndUpdate(req.signedCookies.userid,{
emailList: { $elemMatch: {oldEmail, {$set: {req.body.updateEmail}}}}
}, function(err, userX) {});