formKey = GlobalKey<FormState>();
Внутри этого же контроллера есть функция onSubmitted() которая вызывается при нажатии кнопки подтверждения формы и вызывает
formKey.currentState!.validate();
В UI части внутри build такое дерево:
Scaffold
SizedBox
Form
ListView
.....
.... - Здесь по разному реализованы TextFormField ы
При таком дереве почему-то валидация, которую я хочу реализовать работает только в 4 полях для заполнения, хотя их намного больше.
Если я указываю Form ниже по дереву, прямо там, где у меня непосредственно какой-то Column с TextFormField детьми, то при нажатии на кнопку подтверждения, currentState у formKey возвращается null.
Подскажите как реализовать всё так чтобы задействовались все поля формы при валидации?
Есть разница насколько глубоко в дереве TextFormField находятся?
Теоретически возможна какая хрень, что вызов validate выполняется до того как листвью перестроится, и текстфилды "выпадают" из формы. Но хз, такого у меня не было никогда...
Но почему одни работают, а другие нет тогда, отличий по родительским виджетом вроде нет
А листвью у тебя "обычный" или через билдер-конструктор?
Тогда тем более все ок должно быть 🤷♂️ Obx там случайно не задействован для списка и/или текстфилдов?
Обсуждают сегодня