J'utilise Redux. Dans mon réducteur, j'essaye de supprimer une propriété d'un objet comme celui-ci:
const state = {
a: '1',
b: '2',
c: {
x: '42',
y: '43'
},
}
Et je veux avoir quelque chose comme ça sans avoir à muter l'état d'origine:
const newState = {
a: '1',
b: '2',
c: {
x: '42',
},
}
J'ai essayé:
let newState = Object.assign({}, state);
delete newState.c.y
mais pour certaines raisons, il supprime la propriété des deux états.
Pourrait m'aider à faire ça?
Object.assigncrée uniquement une copie superficielle destateet doncstate.cetnewState.cpointera vers le même objet partagé. Vous avez essayé de supprimer la propriétéyde l'objet partagécet non du nouvel objetnewState.