Angular6 - 使用名称获取嵌套 FormGroup
Angular6 - Get Nested FormGroup using name
我有嵌套表单组
address = new FormGroup({
'com.complex.Address':new FormGroup({
city: cityControl,
streetName: streetNameControl,
houseNumberAddition: houseNumberAdditionControl,
houseNumber: houseNumberControl,
postcode: postcodeControl
})
});
我想找到嵌套表单组,即 "com.complex.Address"。
我已经试过了
this.form.get('address').get('com.complex.Address');
但它总是 return 空值。
现在,如果我将嵌套的表单组(即 'com.complex.Address')更改为任何其他名称,例如 "test" 并执行 this.form.get('address').get('test');
,它实际上 return 我想要的值。
但关键是我无法更改嵌套名称,它会包含一些特殊字符。
如何转义字符并根据需要使用表单组?
查看 .get() 的 angular 代码,它使用“.”作为路径数组的分隔符。
我看不到任何解决方案可以通过它。无论如何你可以使用:
(<FormGroup>this.form.get('address')).controls['com.complex.Address'];
这样试试
NewForm = this.fb.group({
relationshipId: this.fb.group({
code: [null, Validators.required]
})});
this.NewForm.get('relationshipId').value.code
this.NewForm.get('relationshipId').get('code').value`
我有嵌套表单组
address = new FormGroup({
'com.complex.Address':new FormGroup({
city: cityControl,
streetName: streetNameControl,
houseNumberAddition: houseNumberAdditionControl,
houseNumber: houseNumberControl,
postcode: postcodeControl
})
});
我想找到嵌套表单组,即 "com.complex.Address"。
我已经试过了
this.form.get('address').get('com.complex.Address');
但它总是 return 空值。
现在,如果我将嵌套的表单组(即 'com.complex.Address')更改为任何其他名称,例如 "test" 并执行 this.form.get('address').get('test');
,它实际上 return 我想要的值。
但关键是我无法更改嵌套名称,它会包含一些特殊字符。
如何转义字符并根据需要使用表单组?
查看 .get() 的 angular 代码,它使用“.”作为路径数组的分隔符。
我看不到任何解决方案可以通过它。无论如何你可以使用:
(<FormGroup>this.form.get('address')).controls['com.complex.Address'];
这样试试
NewForm = this.fb.group({
relationshipId: this.fb.group({
code: [null, Validators.required]
})});
this.NewForm.get('relationshipId').value.code
this.NewForm.get('relationshipId').get('code').value`