D
Size: a a a
D
AH
D
AH
let user: UserProfile = {
id: this.id,
firstName: this.editUserForm.controls["firstName"].value,
lastName: this.editUserForm.controls["lastName"].value,
email: this.editUserForm.controls["email"].value,
password: this.editUserForm.controls["password"].value,
isBlocked: null,
roles: null
};
С class-transformer достаточно было бы добавить поля id, isBlocked, roles
в саму форму (не выводя их в шаблон) и сделать вот так:this.userStore$.dispatch(new EditUser(plainToClass(UserProfile, this.editUserForm.value)));
Метод plainToClass
преобразовал бы объект из this.editUserForm.value
в класс UserProfile
AH
let user: UserProfile = {
id: this.id,
firstName: this.editUserForm.controls["firstName"].value,
lastName: this.editUserForm.controls["lastName"].value,
email: this.editUserForm.controls["email"].value,
password: this.editUserForm.controls["password"].value,
isBlocked: null,
roles: null
};
С class-transformer достаточно было бы добавить поля id, isBlocked, roles
в саму форму (не выводя их в шаблон) и сделать вот так:this.userStore$.dispatch(new EditUser(plainToClass(UserProfile, this.editUserForm.value)));
Метод plainToClass
преобразовал бы объект из this.editUserForm.value
в класс UserProfile
D
DT
let user: UserProfile = {
id: this.id,
firstName: this.editUserForm.controls["firstName"].value,
lastName: this.editUserForm.controls["lastName"].value,
email: this.editUserForm.controls["email"].value,
password: this.editUserForm.controls["password"].value,
isBlocked: null,
roles: null
};
С class-transformer достаточно было бы добавить поля id, isBlocked, roles
в саму форму (не выводя их в шаблон) и сделать вот так:this.userStore$.dispatch(new EditUser(plainToClass(UserProfile, this.editUserForm.value)));
Метод plainToClass
преобразовал бы объект из this.editUserForm.value
в класс UserProfile
D
D
DT
AH
type: {id: 1, name: 'default'}а бэк хочет получить ключ
type: 1
Для этого можно сделать подобную функциюexport function formatObjectToField<T>(field: keyof T): (value: T) => T[keyof T] | T {
return value => isObject(value) ? value[field] : value;
}
И юзать ее вот так в классе @Transform(formatObjectToField<OrganizationApi>('id'), {toPlainOnly: true})
organization: OrganizationApi;
Потом когда ты сделать classToPlain(item) он сериализует объект согласно всем правилам с свойством {toPlainOnly: true}
или же наоборот превратит объект в нужный класс тоже с правилами)DT
type: {id: 1, name: 'default'}а бэк хочет получить ключ
type: 1
Для этого можно сделать подобную функциюexport function formatObjectToField<T>(field: keyof T): (value: T) => T[keyof T] | T {
return value => isObject(value) ? value[field] : value;
}
И юзать ее вот так в классе @Transform(formatObjectToField<OrganizationApi>('id'), {toPlainOnly: true})
organization: OrganizationApi;
Потом когда ты сделать classToPlain(item) он сериализует объект согласно всем правилам с свойством {toPlainOnly: true}
или же наоборот превратит объект в нужный класс тоже с правилами)AH
AH
@Transform(formatDateToPlain(), {toPlainOnly: true})
@Transform(formatDateToClass(), {toClassOnly: true})
conclusion_date: Moment | string;
DT
@Transform(formatDateToPlain(), {toPlainOnly: true})
@Transform(formatDateToClass(), {toClassOnly: true})
conclusion_date: Moment | string;
AH
AH
DT
AH
DT