我正在开发一个angular
应用程序和spring
后端。我有一个FormGroup
如下:Angular - 未定义为空字段转换
myForm = new FormGroup({
fieldOne: new FormControl(),
fieldTwo: new FormControl(),
fieldThree: new FormControl()
});
,像这样的对象匹配:
export class MyClass{
firstField: number;
secondField: number;
thirdField: string;
}
当我提交表单我做这样的事:
this.firstField = myForm.value.fieldOne;
的问题是,如果字段未设置,则它们是undefined
。这对无法反序列化对象的后端服务造成问题,因为它不期望undefined
但是null
。
这可以解决我的问题:
this.firstField = myForm.value.fieldOne ? myForm.value.fieldOne : null;
,但是当我有很多领域它真的不是那么优雅。 然后我发现以下工作:
export class MyClass{
firstField: number = null;
secondField: number = null;
thirdField: string = null;
}
这将是完美的。我的问题是,因为我是javascript
的新手:那是对的吗?是否有另一种做这种转换的最佳做法?你通常如何解决前端和后端之间的这种序列化问题?谢谢。