169 похожих чатов

Всем привет, кто то использует rxweb/reactive-form-validators? На проекте решили

из за пары плюшек реактивных форм переходить на них, и проблемой сейчас для нас является валидация. Например условная валидация.

Не хочется раздувать код для больших форм с ручным сбросом валидатором и их установкой и всем таким. По этому я предположил что 100% должно быть какое то решение которое позволит не писать велосипедов.

В общем интересно мнение на счёт того как делается валидация с реактивными формами, на сколько популярна либа в сообществе или можно обойтись ручками спокойно на больших формах (под большим будем иметь 50+ полей) без либ?

11 ответов

19 просмотров

А за чем? если ReactiveFormModule все стандартные валидаторы есть, хочешь пиши свой.

что за кейс с ручным сбросом валидаторов и их установкой?

Vlad-Chabanenko Автор вопроса
bassjs 🇺🇦 Sekhno
А за чем? если ReactiveFormModule все стандартные ...

Условного валидатора нет, то есть мне нужно ручками самому подписываться на изменение чекбокса, брать внутри мой инпут который должен быть обязательный если чекбокс true, иначе не обязательным. И если чекбокс активный то делать setValidators/clearValidators + updateValueAndValidity. И мне кажется на банальное просто условие тратить под 5-10 строк кода для одного поля ну такое себе, особенно если этих полей на форме не одно а несколько, и сама форма на полей эдак 100 this.foodForm.get('checkbox').valueChanges.pipe( tap((hasFavoriteDessert: boolean) => { if (hasFavoriteDessert) { this.foodForm.get('input').setValidators(Validators.required); } else { this.foodForm.get('input').clearValidators(); } this.foodForm.get('input').updateValueAndValidity(); }) ).subscribe()

Vlad-Chabanenko Автор вопроса
Vlad Chabanenko
Условного валидатора нет, то есть мне нужно ручкам...

Но ведь можно менять контролы, их значения и так же валидаторы updateValueAndValidity

Vlad Chabanenko
Условного валидатора нет, то есть мне нужно ручкам...

не вижу как вами упомянутая либа решает эту проблему

Vlad-Chabanenko Автор вопроса
Smooth Operator
не вижу как вами упомянутая либа решает эту пробле...

https://github.com/rxweb/rxweb/tree/master/client-side/angular/packages/reactive-form-validators#conditional-validation

Vlad-Chabanenko Автор вопроса
bassjs 🇺🇦 Sekhno
Но ведь можно менять контролы, их значения и так ж...

Ну да, я понимаю, но в сообщении выше я скинул пример про что я. На одно поле условное идёт 10 строк кода. У меня описание формы будет на пример 100 полей, + ещё таких блоков условных около 5-10 на форме. То есть у меня будет пример 100-110 полей на FormGroup. И потом дальше ещё около 100 полей на валидацию. То есть у меня буквально уже описание самой обычной формы на моём проекте занимает аж 200 строк компонента + имхо кажется не очень читабельным, но это возможно ибо я только вкатываюсь в реактивные формы

Vlad Chabanenko
screenshot https://github.com/rxweb/rxweb/tree/master/client-...

а, у них свой форб билдер, понятненько

Vlad Chabanenko
Ну да, я понимаю, но в сообщении выше я скинул при...

Привет, делал вложенные формы на 100+ контролов. Причём валидаторы контрола на глубине зависят от родителей. Так вот, на ангуляровских реактивных формах это просто боль. Могу только посочувствовать.

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта