У меня есть класс модели user
, который выглядит примерно так:
{
firstName: string;
lastName: string;
someSwitch: boolean;
}
Если я объявляю пользователя, этот класс применяется по умолчанию и завершится с ошибкой во время компиляции:
fooUser : User = {
firstName: string;
lastName: string;
}
Сбой, так как необходимо определить someSwitch
(если только он не будет помечен как необязательный в классе)
Как заставить принудительно соблюдать эту модель во время выполнения, не тестируя отдельно для каждого полятак как это работало бы просто отлично при запуске:
someJson = {
firstName: string;
lastName: string;
}
fooUser : User = someJson;
Что я мог сделать, это просто создать конструктор для User
и назначить все обязательное в нем, а затем создать объект, когда мне это нужно, но это странночтобы создать конструктор для простой модели данных, может быть, я просто смотрю далеко, и это правильное решение.