मैं Redux का उपयोग कर रहा हूं। मेरे reducer में मैं इस तरह से एक वस्तु से एक संपत्ति को दूर करने की कोशिश कर रहा हूँ:
const state = {
a: '1',
b: '2',
c: {
x: '42',
y: '43'
},
}
और मैं मूल स्थिति को बदलने के लिए बिना इस तरह से कुछ करना चाहता हूं:
const newState = {
a: '1',
b: '2',
c: {
x: '42',
},
}
मैंने कोशिश की:
let newState = Object.assign({}, state);
delete newState.c.y
लेकिन कुछ कारणों से, यह दोनों राज्यों से संपत्ति को हटा देता है।
मुझे ऐसा करने में मदद कर सकता है?
Object.assign
केवल एक बनाता है उथले नकल कीstate
है और इसलिएstate.c
औरnewState.c
एक ही साझा वस्तु को इंगित करेंगे। आपनेy
साझा ऑब्जेक्ट से संपत्ति को हटाने की कोशिश की,c
न कि नई वस्तु सेnewState
।