уже форма, в которой разные инпуты. Вот форме можно вьюмодель сделать. И то, под вопросом. Что она должна уметь, кроме как показывать разные инпуты?
Но опять же сколько форм у тебя будет? И не будут же они вложены одна в другую
сейчас условно есть h/vstack который приходит с бэка, и у него внутри может лежать всё что угодно, любой инпут, другой стэк, кнопка, радиотаг, и этих стэков тоже может быть много на разных уровнях, тоесть да, отвечая на твой вопрос - форм может быть много и разной вложенности
И как работает форма внутри формы? Форма это же связь элементов друг с другом, логика валидации и отправки. А не просто стек с инпутами. Стек с инпутами это часть верстки, ему логика тоже не нужна
чем в твоем подходе форма отличается от главной вьюхи со своей вьюмоделью? получается надо вообще всю логику туда выносить
Тем что на вьюхе может быть несколько форм
ок, возможно стоит обьединять инпуты в формы, с этим понял, а как быть с вложенными компонентами, которые хранят стэйт, но находятся например в листе и при скролле теряют свое состояние? я думал, что хранение вьюмоделей таких вьюх в главной вьюмодели - решение, но видимо у меня совсем swiftui подходы хромают
Почему они теряют состояния? У тебя что список текстовых полей внутри LazyVStack или List?
да, например список тоглов внутри list - самый простой пример. Именно поэтому я и хотел насоздавать вьюмоделей, потому как вьюха не хранит стэйт, и ее struct с бэка для конфига тоже
Все ленивые списки list LazySatck и тд нужны для того что бы ворочать большим количеством данных. У тебя там сколько строк с толглами будет? 1000? Думаю что не больше 50, для этого ленивые списки не нужны. А без ленивых списков нет проблемы потери стейта при скроле
это понятно, но получается что стейт - не гарантия, да и система в любой момент и сама может как-нибудь перерисоваться и всё похерить, да? надо как-то данными правильно оперировать (вьюмоделями?) я чёт совсем поплыл, ладно бы еще понятно было где какая вьюха, но server driven всё осложняет раз в 10
Обсуждают сегодня