Estoy trabajando en un proyecto, donde cuando al usuario le gusta un comentario anidado dentro de la matriz de comentarios en un documento de publicación dentro de la colección de publicaciones, uso el siguiente código para incrementar la cantidad de Me gusta en el comentario:
await Post.findOneAndUpdate({ "postComments.commentId": commentId }, { $inc: { "postComments.$.commentLikes": 1 } });El problema es que necesito el número original que estoy incrementando para devolverlo a la vista de usuario para incrementar dinámicamente el número mostrado de me gusta, y no puedo obtener el objeto completo porque devolverá la publicación completa, donde está anidado el comentario. dentro de la matriz de comentarios y no sé qué índice es ese. ¿Cómo obtengo el número original de me gusta del comentario anidado?
Gracias de antemano :)
usar projection en findOneAndUpdate
db.getCollection('comment').findOneAndUpdate( { "postComments.commentId": "1" }, { $inc: { "postComments.$.commentLikes": 1 } }, { projection: { postComments: { $elemMatch: { commentId: { $eq: "1" } } }} })