- react-reduxをreducksパターンで実装しています。
- オブジェクトを配列として持っているstoreの値を更新する際に、map関数を使用して更新したいんですが更新されません。
- 配列内の値を参照して一番小さいIDのオブジェクトを、actionを発行した際の引数のオブジェクトと入れ替えてstoreを更新したいです。
initialState
1product: { 2 list: [] 3}
action
1export const uopdateList = "UPDATE_LIST"; 2export const updateListAction = (data) => { 3 return { 4 type: "UPDATA_LIST", 5 payload: list 6 }; 7};
reducer
1export const ProductReducer = (state = initialState.product, action) => { 2 switch(action.type){ 3 ~~~ 4 case Actions.UPDATE_LIST: 5 return { 6 ...state.list.map((element) => { 7 if(element.id === Math.min.apply(null, state.list.map(e => e.id))))[ 8 return action.payload; 9 } else { 10 return element; 11 } 12 }) 13 }; 14 ~~~
-
質問内容でわかりにくいことがあれば、補足いたします。
-
以上、よろしくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。