Формы в Inertia
В основном учебнике форма
на экране уже собрана
из компонента Form:
поля, отправка и возврат
на ту же страницу без полной
перезагрузки документа.
Так удобно описывать типовую
разметку, когда имена полей
совпадают с тем, что ждёт
сервер, а логика на клиенте
минимальна.
На практике данные формы
часто нужно держать в скрипте:
связывать поля через
v-model, следить,
изменилось ли что-то
по сравнению с начальным
состоянием, отключать кнопку
на время запроса, сбрасывать
значения после удачного ответа
или проверять одно поле
ещё до полной отправки.
Для этого Inertia даёт хелпер
useForm: объект
с полями, методами отправки
и служебными признаками,
которые обновляются сами.
Хелпер не заменяет серверную
проверку и не отменяет привычный
ответ Laravel методом back
или редиректом. Он лишь
переносит управление формой
ближе к Vue, когда одной
разметки Form
уже мало. Ошибки проверки,
пришедшие с сервера,
попадают в объект формы;
отправка идёт методами
post, put
и другими, как у визита
Inertia, но без скачивания
нового документа.
Со всем этим мы и будем разбираться в рамках данного раздела.