Почему я не могу сбросить состояние до исходного? [Перевождь] - PullRequest
0 голосов
/ 22 марта 2020

Я хочу понять, почему этот пример не работает?

case "RESET":
  return initialState;

Настроить пример:

https://codesandbox.io/s/nervous-bas-oqd4v?fontsize=14&hidenavigation=1&theme=dark

UPD: Проблема в мутации

1 Ответ

1 голос
/ 22 марта 2020

Не изменяйте состояние в вашем редукторе, вы можете установить значение следующим образом

case 'CHANGE_PARAM':
  return {
    ...state,
    params: state.params.map((p, i) =>
      i === action.index
        ? { ...p, value: action.payload }
        : p
    ),
  };

Ваши входные компоненты являются неуправляемыми компонентами и не могут быть установлены с любым значением, потому что у них нет свойства значения:

<input onChange={onChangeValue} />

Попробуйте вместо этого:

<input onChange={onChangeValue} value={props.value} />
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...