Обновление состояния реакции внутри ввода

#reactjs #forms #input #react-hooks #state

#reactjs #формы #ввод #реагирующие хуки #состояние

Вопрос:

Я работаю над формой React Hook и пытаюсь обновить поле, которое уже поставляется с сохраненными данными внутри ввода.

У меня возникли синтаксические сомнения, потому что после обновления страницы данные во входных данных все еще не изменены.

Что я могу сделать в этом случае? Спасибо.

 const Form = () => {
 const [value, setValue] = useState('');

 const updateForm = e => {
  setValue(e.target.value);
 }

 return (
   <div onSubmit={updateForm}>
     <Component type="text"/>
     <Button type="submit" onClick={updateForm}></Button>
   </div>
 )}
  

Комментарии:

1. Неясно, в чем собственно проблема, с которой вы столкнулись

Ответ №1:

Я собираюсь нанести удар здесь и сказать, Component это входные данные. Если это так, вам нужно установить для него value и onChange prop, чтобы отслеживать изменения в родительском, Form . Если Component это ваш компонент, вам придется предоставить их через props, если вы этого не сделали. Это будет выглядеть примерно так,

<Component value={value} onChange={e => setValue(e.target.value)} />

Если Component внутри него есть данные, вы должны «поднять состояние» до родительского с помощью обработчика, переданного в качестве реквизита, как я продемонстрировал. Если Component это сторонний компонент, у них, вероятно, уже есть props как часть API компонента.

Я не знаю, что вы пытаетесь сделать, помещая onSubmit в div, но onSubmit используется при отправке form на сервер через POST.