схема монгуза
Слева класс, который я собираюсь использовать в коде как класс юзера для бизнес логики.
При вытягивании из монги класс репозитория инстанциирует класс User и возвращает уже готовый класс юзера
Как правильно написать конструктор чтобы можно было передать new User(dataFromMongo) и класс нормально инстанциировался?
используй class-transformer, чтобу уменьшить рутину и то, что оно не сможет, пропиши вручную упд: также в конструкторе класса для бизнес-логики сделай возможность принимать как монго, так и инстанс этого класса. чтобы любой из 2х вариантов можно было принимать и "сериализовать"
Класс-трансформер решил мою проблему с конвертацией. А как быть с новым классом? Допустим `new User({email}) Создастся Класс где в конструкторе будет явно указаны значения null, как у меня, а все остальное будет undefined Имеет смысл создать для вложенных объектов отдлеьные классы с их собственным конструктором?
Обсуждают сегодня