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.assign
crée uniquement une copie superficielle destate
et doncstate.c
etnewState.c
pointera vers le même objet partagé. Vous avez essayé de supprimer la propriétéy
de l'objet partagéc
et non du nouvel objetnewState
.