Size: a a a

AngularPiter - русскоговорящее сообщество

2020 September 27

l2qwe87 (lQWEl) Илья... in AngularPiter - русскоговорящее сообщество
используем, в том числе для некоторых полей с обращением на бэк при вводе данных
источник

MA

Maxim Afanasev in AngularPiter - русскоговорящее сообщество
Т.е. вы ошибки для конкретного поля получаете из двух источников?
источник

l2qwe87 (lQWEl) Илья... in AngularPiter - русскоговорящее сообщество
да
источник

l2qwe87 (lQWEl) Илья... in AngularPiter - русскоговорящее сообщество
так сказать в режиме реального времени, и при отправке данных(всей модели)

Бывают казусы)
без тестов не как
источник

MA

Maxim Afanasev in AngularPiter - русскоговорящее сообщество
Ок, спасибо. Вот этот момент меня и смущает. Тут некоторая неопределенность возникает для разработчиков, нету очевидно правильного способа решения задачи.
источник

l2qwe87 (lQWEl) Илья... in AngularPiter - русскоговорящее сообщество
ну как) самы верный это кодогенерация)
источник

l2qwe87 (lQWEl) Илья... in AngularPiter - русскоговорящее сообщество
на бэке атрибуты на модели, генерация моделей для фронта директивами над полями
источник

MA

Maxim Afanasev in AngularPiter - русскоговорящее сообщество
Мне бы хотелось сказать разработчикам: вся валидация - здесь. Когда нет понятных рецептов, на кодреью работы в разы прибавляется.
источник

l2qwe87 (lQWEl) Илья... in AngularPiter - русскоговорящее сообщество
мы начали такое делать ... но больно дорого, когда появляются сложные валидаторы, реализовывать кодогенерацию это приличная боль..
источник

MA

Maxim Afanasev in AngularPiter - русскоговорящее сообщество
l2qwe87 (lQWEl) Илья
на бэке атрибуты на модели, генерация моделей для фронта директивами над полями
Да, звучит сложно и дорого.. ) Хотя, если речь о нескольких сотнях одинотипных форм, то это может быть оправдано. У нас форм не очень много.
источник

l2qwe87 (lQWEl) Илья... in AngularPiter - русскоговорящее сообщество
вот и мы решили что для наших нужд проще реализация в двух местах и покрытие тестами)
источник

MA

Maxim Afanasev in AngularPiter - русскоговорящее сообщество
Спасибо, что поделились опытом. Буду думать дальше. Если что-то толковое получится - расскажу потом. )
источник
2020 September 28

GK

Georgii Klubnikov in AngularPiter - русскоговорящее сообщество
Maxim Afanasev
Мне бы хотелось сказать разработчикам: вся валидация - здесь. Когда нет понятных рецептов, на кодреью работы в разы прибавляется.
Кажется таким местом и есть реактивная форма: синхронные валидаторы, асинхронные, кастомные, сетЕррор .... все сводится в одной точке  и по папочкам
источник

MA

Maxim Afanasev in AngularPiter - русскоговорящее сообщество
Georgii Klubnikov
Кажется таким местом и есть реактивная форма: синхронные валидаторы, асинхронные, кастомные, сетЕррор .... все сводится в одной точке  и по папочкам
Да, собственно в этом и проблема. Реактивные формы - это представление, а валидация данных - бизнес-логика.
источник

GK

Georgii Klubnikov in AngularPiter - русскоговорящее сообщество
Maxim Afanasev
Да, собственно в этом и проблема. Реактивные формы - это представление, а валидация данных - бизнес-логика.
Не соглашусь, темплейт формы, это представление , реактивные формы это сервисный слой который специально делали чтобы отделить бизнес логику управления формами от представления , с помощью реактивных форм вы можете генерировать формы на основе данных, видимо вам надо двигаться в сторону formly и подобных решений для создания динамических форм на основе данных. И вы сможете выбирать где централизованно этими данными рулить
источник
2020 October 07

ЮБ

Юрий Безруков... in AngularPiter - русскоговорящее сообщество
Всем привет, что обычно используете, когда появляется необходимость deep clone, при условии, что не хочется писать JSON.parse(JSON.stringify(a))?

Только immer.js или есть альтернатива?
источник

Вキ

Вертихвост キバ 🏡🦊... in AngularPiter - русскоговорящее сообщество
Юрий Безруков
Всем привет, что обычно используете, когда появляется необходимость deep clone, при условии, что не хочется писать JSON.parse(JSON.stringify(a))?

Только immer.js или есть альтернатива?
А для чего это может быть необходимо?
источник

d

drow in AngularPiter - русскоговорящее сообщество
ничего - нет такой необходимости ) а так cloneDeep из лодаша если зачемт понадобится
источник

ЮБ

Юрий Безруков... in AngularPiter - русскоговорящее сообщество
Например, получаю список объектов по подписке на store и хочу как-то модифицировать объект, а потом сохранить или послать на бек (а данные внутри стора меняться не должны)
источник

ЮБ

Юрий Безруков... in AngularPiter - русскоговорящее сообщество
Лодаш... Не хочется лишние библиотеки использовать
источник