Angular. Как правильно рабать с входными и выходными данными. Библиотека class-transformer

preview_player
Показать описание
В этом видео разберём проблемы получения данных с backend, как их решать без помощи библиотеки class-transformer, а так же с помощью этой библиотеки
Рекомендации по теме
Комментарии
Автор

Интересный подход, возьму на вооружение. Спасибо за труд!

fidget
Автор

Дорый день. Спасибо большое за очень полезную библиотеку, посмотрев возник вопрос: в каком слое правильно делать данное преобразование? На ум приходит написать map в котором сохранить соответствие интерфейса backend классу frontend, и сделать интерцептор который получив данные будет проверять типы и производить преобразование, таким образом в сервис попадет класс обладающий поведением, очень хотелось бы узнать что думаете, используется ли такое?

АртурЛагунов-чъ
Автор

на каком уровне лучше делать трансформацию? сразу при получении данных с бэкенда? или лучше в селекторе? в случае отдельного селектора мы сможем иметь версию с оригинальными данными

serhiitachuk
Автор

Был опыт использования date-fns только потому, что он работает с Angular Material.

VasyaFF
Автор

Momentjs разве еще живой? Они на своем же сайте рекомендуют использовать более современные альтернативы. В частности luxon.

fidget
Автор

Здравствуйте Александр

30 мин ждал кейса на случай валидации типов с бекенда

Как например делает yup в реакт формах ну и в ангуляре похоже. А что если на фронт пришли невалидные данные…крошить не ок, обрабатывать хз как

Maximurzk
Автор

А чего нельзя взять респонс с бека, и пропустить через класс модели ( new Model) и там сделать все преобразования ?

izyumrockstar
Автор

Это конечно прикольно. Но как показывает практика проще самому написать преобразование чем использовать такие библиотеки,
1 всегда будет какой-то вредный случай который не получится сделать с этой библиотекой
2 разобраться с такой библиотекой не всегда быстро получается. Каждому новому программисту нужно объяснять что это за зверь или на каждый не стандартный случай лезть в документацию которая не всегда нормальная

AlexAlex-mqsg
Автор

не очень нравится подход с декораторами, все-таки непонятно что с ними будет когда в js завезут нативные

и не ясно для чего импорт reflect metadata и почему нельзя без него обойтись

вообщем было бы здорово увидеть альтернативу class-transformer которая была бы более легковесной, без декораторов и без необходимости в лишних импортах

ilnurryazhapov
Автор

Вместо value = name + '_1' лучше писать value = `${name}_1`

Без наездов - делюсь опытом.

Вообще полезно читать статьи вроде "10 новых фишек JS", или "За что мы ненавидим JS". Мои первые code review состояли в том, чтобы взять эти фишки в работу.

VasyaFF
Автор

Во-первых, moment.js уже 1, 5 года не поддерживается, во-вторых - вы размер этого пакета видели?

ondatrai