MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

_.merge clona subdocumentos em vez de atualizar


Tente usar _.extend ou _.assign em vez de:
var updated = _.assign(entry, req.body);

Esta resposta por ShitalShah destaca as diferenças entre mesclar e estender que está causando duplicatas em seu objeto resultante com mesclagem, mas essencialmente:

JSBin para ilustrar as diferenças:
var dest = {
  p: { x: 10, y: 20},
};

var src = {
  p: { x: 20, z: 30},
};

console.log(_.merge(dest, src)); 
/*
[object Object] {
  p: [object Object] {
    x: 20,
    y: 20,
    z: 30
  }
}
*/

console.log(_.extend(dest, src));
/*
[object Object] {
  p: [object Object] {
    x: 20,
    z: 30
  }
}
*/