2017-10-09 105 views
0

內部字典我有一個像反應:修改列表

this.state = { 
      newPerson: '', 
      people: [{name:'Eric', update: false} , {name:'Rick', update:false}, {name:'Yoni', update:false}] 
     }; 

我要地圖上的列表,並可以修改n對象的狀態對象(即 - 設置狀態是真實的)。

我在想,我可以通過檢查name是否匹配N對象的名稱來映射字典列表,然後「彈出」/刪除字典,修改它,然後重新添加它。

有沒有更好的方法來做到這一點?特別是通過不修改空間中的對象來反應的「功能」編程風格。

+0

我想你想用每個循環和簡單地更新N作爲必需的對象。 – fungusanthrax

回答

0

你可以只映射你的人員列表並修改(合併)只有符合要求的人(例如你的例子中的名字 - 它不會影響原始數組)。但最好的方法是將你的對象編入索引,然後使用map函數 - 你可以在某個時候重複名稱。

我知道這是終極版的文檔,但可以幫助你解決問題 - http://redux.js.org/docs/recipes/reducers/ImmutableUpdatePatterns.html