मैं reactjs में यह कम करने के साथ एक गाड़ी एप्लिकेशन का निर्माण किया है/redux:मैं reducer में संपत्ति कैसे टॉगल कर सकता हूं?
const initialState = {
items: [],
cartOpen: false,
total: 0
}
const Cart = (state = initialState, action) => {
switch (action.type) {
case 'ADD_TO_CART':
let newstate = [...state, action.payload];
var newTotal = 0;
newstate.forEach(it => {
newTotal += it.item.price;
});
newstate.total = newTotal;
newstate.cartOpen =true
return newstate;
case 'TOGGLE_CART':
debugger;
return !state.cartOpen;
default:
return state
}
}
export default Cart;
मैं गाड़ी के लिए राज्य यानी खुला स्थापित करने के लिए कोशिश कर रहा हूँ लेकिन जब मैं लॉग की जांच की टोकरी संपत्ति अद्यतन और नहीं है cartOpen संपत्ति?
मैं वास्तव में राज्य मैं सिर्फ एक बूलियन मान में परिवर्तन नहीं करते? –
मैंने गलती से एंटर कुंजी दबाया, ठीक है मेरी पिछली टिप्पणी बाकी है: 'प्रारंभिकस्टेट = {ए: 1, बी: 2, कार्ट ओपेन: झूठी}' अब यदि आपका रेड्यूसर वापस लौटाता है! State.cartOpen' फिर कंसोल .log (राज्य) एक बुलियन 'सत्य' उत्पन्न करेगा (लेकिन आप '{a: 1, b: 2, cartOpen: true}') चाहते थे। जिसका अर्थ है कि आपने अपने राज्य ऑब्जेक्ट में अन्य सभी गुण 'ए', 'बी' आदि खो दिए हैं। अनिवार्य रूप से आपने अपने राज्य को बदल दिया है या दूषित कर दिया है। –