Как я могу манипулировать данными для React & Redux - PullRequest
0 голосов
/ 24 сентября 2018

Я новичок в React & Redux, если вы дадите мне какие-либо советы, я был бы очень признателен.

Мои данные примерно такие:

{
  createdAt:"2018-07-06T15:59:10.493+03:00"
  enabledDomains:[]
  enabledOnMobile:true
  enabledUrls:[]
  fontColor:"#38998F"
  fullPageOnMobile:false
  id:"bf48b146-c13e-4269-bb9f-4c68ced1ccda"
  margin:12
}

Когда я хочу обновить margin, fullPageOnMobile или fontColor, все хорошо.С другой стороны, когда я пытаюсь использовать массивы enabledDomains или enabledUrls, данные моего действия меняются, за исключением enabledDomains или enabledUrls.Я изменил его в состоянии и отправил правдивые данные с действием.Но это не изменилось.

Мой редуктор такой:

case UPDATE_WEB_WIDGETS_SUCCESS:
  return {
    ...state,
    data: action.data,
    loading: false,
    error: false,
  };

1 Ответ

0 голосов
/ 24 сентября 2018

Вы не можете просто вернуть обновленный массив данных в хранилище Redux.Это потому, что Redux оценивает массивы как равные и, следовательно, не будет обновляться.

Попробуйте что-то вроде

case UPDATE_WEB_WIDGETS_SUCCESS:
  return {
    ...state,
    data: [...state.data, action.data]
    loading: false,
    error: false,
  };
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...