我有一個reducer,它在對象中返回一個包含數組的對象。我渲染數組中的項目列表,當用戶單擊該項目時,我想重新渲染數組(至少是項目)。我創建了一個jsbin,顯示問題:react-redux數組中的更新項不會重新渲染
https://jsbin.com/fadudeyaru/1/edit?js,console,output
要重現該問題,請單擊+或 - 按鈕幾次創造歷史。然後點擊其中一個歷史項目。您會注意到控制檯日誌會注意到該事件並更新狀態,但該列表不會重新呈現。這可以通過點擊列表中的項目之後再次單擊+/-按鈕來驗證。之後你會看到它正確渲染。
問題是爲什麼react-redux不會導致重新呈現?我需要做些什麼來強制這個問題?
在此先感謝。
IIRC,從reducer返回一個對象只做一個淺拷貝...也許該數組沒有得到更新? – Kryten
不,它正在更新中...您可以在console.log輸出中以及通過選擇一些歷史記錄項目然後單擊+或 - 按鈕... – Ben