Реагировать - установить контролируемое входное значение из магазина Redux - PullRequest
0 голосов
/ 18 апреля 2020


Я отправляю действие приставки на событие onChange на входе, чтобы добавить к какому-либо массиву «ответы» в состоянии Redux.
Все работает нормально, и магазин Redux обновляется, но проблема при установке значения input для отражения изменений в хранилище Redux в консоли выдается сообщение об ошибке ...

Warning: A component is changing an uncontrolled input of type number to be controlled.

Вот коды и поле для демонстрации проблема ...

https://codesandbox.io/s/controlled-input-issue-p2k74

Как я могу сделать управление input управляемым, но через хранилище Redux, а не через локальное состояние?

1 Ответ

2 голосов
/ 18 апреля 2020

Если вы хотите, чтобы вход управлялся, просто каждый раз передавайте значение value реквизиту элемента ввода, например, измените это

QuestionAnswerInput. js

Измените компонент ввода на

  <input
    type="number"
    value={getInputValueFromStore(answers, questionId) || ""}
    onChange={e => handleAddNumericalAnswer(e)}
  />

Подробнее об управляемых компонентах см. this article

...