Typescript Angular6-使用名称获取嵌套的FormGroup

Typescript Angular6-使用名称获取嵌套的FormGroup,typescript,angular6,form-control,formgroups,Typescript,Angular6,Form Control,Formgroups,我有嵌套的表单组 address = new FormGroup({ 'com.complex.Address':new FormGroup({ city: cityControl, streetName: streetNameControl, houseNumberAddition: houseNumberAdditionControl, houseNumber: houseNumberContro

我有嵌套的表单组

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');
但它总是返回空值

现在,如果我将嵌套的formgroup(即“com.complex.Address”)更改为任何其他名称,如“test”,并执行
this.form.get('Address').get('test')它实际返回我想要的值

但关键是我不能更改嵌套名称,它将包含一些特殊字符


如何转义字符并使用所需的表单组?

查看.get()的角度代码,它使用“.”作为分隔符来创建路径数组

我看不出有什么办法可以解决这个问题。无论如何,您可以使用:

(<FormGroup>this.form.get('address')).controls['com.complex.Address']; 
(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`

我已经试过了,但是它显示了一个错误“属性'controls'在类型'AbstractControl'上不存在”。“Ok,请参阅编辑后的答案。这只是一个类型问题。您必须指定您确信将获得FormGroupYes,它解决了问题,谢谢。