2017-07-04 9 views
0

Reduxの店舗が新しいデータを受け取った後、私のコンポーネントが更新されない理由を理解しようとしています。 Githubの問題は、オブジェクトを返さずにオブジェクトを変更していることを示しているようですが、配列全体でこれを行う方法を見つけることができませんでした。アレイ全体を更新するRedux

ここに私の現在のコードがあります。

initialState = [] 
... 
switch(action.type) { 
    case "SET_STORIES": { 
    state = [...action.payload]; // data is an array of objects. 
    // does not work either: state = [...state, action.payload]; 
    break; 
    } 
} 
return state; 

同じコマンドで、以前のデータがある場合は、配列全体を上書きしたいと思います。

これは間違いありませんか? (コンソールログは更新された配列をログに記録しますが、これはコンポーネントに返されることを意味します)

答えて

1

コード全体ではわかりにくいですが、このスニペットは少なくともペイロードが不変オブジェクトの配列。ただし、可変オブジェクトの配列で、ペイロードに以前の状態と同じオブジェクトの配列が含まれていても変更されている場合は、各要素の詳細を表示するサブコンポーネントが変更を認識できないことがあります。

+1

お返事ありがとうございます。変数のタイプミスを引き起こします:( – dmr07

関連する問題