ErrorFormField
ErrorFormField - Реакция принудительно вызывает ошибку валидации для текущего поля формы, прерывает его обработку и возвращает пользователя к этому же полю для повторного ввода.
Это реакция для кастомной валидации — когда стандартных средств проверки (регулярное выражение, минимум/максимум) недостаточно или требуется проверить данные с учётом сложной логики.
Когда это нужно
Стандартная валидация формы (регулярные выражения, проверка диапазона чисел) работает автоматически. Но бывают ситуации, когда её недостаточно:
| Сценарий | Почему стандартная валидация не подходит |
|---|---|
| Проверить, существует ли email в базе пользователей | Нужен запрос к базе данных или API |
| Проверить, не заблокирован ли пользователь | Нужна проверка по списку или переменной |
| Проверить, что введённый промокод действителен | Нужна проверка по списку или API |
| Проверить, что число попадает в динамический диапазон (зависит от предыдущего ответа) | Диапазон не фиксирован, меняется в рантайме |
| Комплексная проверка с несколькими условиями | Нужно больше одного регулярного выражения |
Как это работает
ErrorFormField прерывает нормальное завершение поля. Поле не считается пройденным, даже если данные прошли стандартную валидацию. Форма остаётся на этом же поле.
Резюме
ErrorFormField — это кнопка аварийной остановки для поля формы. Используйте её, когда стандартные средства проверки не справляются, и нужно реализовать собственную логику валидации:
- Проверка уникальности данных
- Проверка по внешним источникам (API, БД, переменные)
- Динамические диапазоны, зависящие от предыдущих ответов
- Комплексные условия с несколькими проверками
Помните: реакция только сигнализирует об ошибке, но не отправляет сообщение. Сообщение нужно настраивать отдельно в "Триггер ошибки поля».