0
我相信我現在一直在修改我的狀態很長一段時間。我想做到以下幾點,想知道爲什麼它不工作:修改狀態和更新我的減速器的正確方法? (React/Redux)
case "SAVE_DATA_TO_PERSON" :
let newState = {...state, data: {start: action.payload.start, end: action.payload.end}};
return newState;
我在這裏創建一個新的對象,拿老態,並加入我的新數據。 雖然它似乎有所作爲,但它不會長時間保存數據。在發起其他行動後,這一切都消失了。我想知道爲什麼?
這是我用來做什麼的,它似乎工作:
case "SAVE_DATA_TO_PERSON" :
let newState = state;
newState.audio = {start: action.payload.start, end: action.payload.end};
return newState;
但在這裏,現在看來,我修改狀態。
我只想知道我的第一個解決方案是否是正確的,我的第二個解決方案確實在修改狀態。
當然第二種方案是直接修改狀態 - 會怎樣它*不*是? –
我想我以爲我已經將狀態複製到newState(作爲一個新的對象),並沒有使用引用。 –
不,他們指的是同一個狀態對象。 –