Выбор ответа Middle Формы обновлено

Что происходит с полями после action

Вопрос

Форма объявлена как <form action={addComment}>, поля неконтролируемые. addComment успешно завершился. Что станет с полями?

Попробуйте сами

Выберите вариант, и откроется разбор.

Показать ответ и разбор

Коротко

Правильный ответ: React сбросит неконтролируемые поля к начальным. Когда в action передана функция, React отменяет нативную отправку и после успешного завершения action сбрасывает форму (аналог form.reset()).

Варианты ответа

  1. Ничего: значения останутся, как до отправки
  2. Страница перезагрузится, как при обычной отправке
  3. React сбросит неконтролируемые поля к начальнымправильный ответ
  4. Поля станут неактивными до следующего рендера

Разбор

Когда в action передана функция, React отменяет нативную отправку и после успешного завершения action сбрасывает форму (аналог form.reset()). Для контролируемых полей сброс не трогает ваше состояние, его нужно чистить самому. Вручную сброс можно запросить через requestFormReset из react-dom.

  • Перезагрузки нет: React перехватывает отправку.
  • Значения не остаются: это и есть поведение по умолчанию в React 19.
  • Блокировки полей React не делает.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.

Термины по теме