如何访问嵌套 formGroup 内的表单属性?这可能听起来很困惑,但我认为代码将帮助你们理解。 这是 formGroup,正如您所看到的,formGroup 中有一个数组:
this.formDadosBancarios = this._fb.group({
id: [''],
dados_titular: this._fb.array([
this.initTitular()
])
})
initTitular(){
return this._fb.group({
titular: ['', [<any>Validators.required, <any>Validators.minLength(3)]],
cnpj: [''],
cpf: ['', Validators.required],
data_nasc: ['', Validators.required],
agencia: ['', <any>Validators.required ],
banco: ['', <any>Validators.required],
conta: ['', <any>Validators.required],
tipo: ['', <any>Validators.required],
pessoa_juridica: ['']
})
}
这是我尝试访问 ìnitTitular` 内的属性 cpf
的代码片段(我知道下面的代码看起来毫无意义,但只是为了说明逻辑):
const cpfCtrl: AbstractControl = this.formDadosBancarios.get('dados_titular').get('cpf');
最佳答案
您只需要使用 FormArray
的 at(index: number) : AbstractControl
方法即可
let array = <FormArray> this.formDadosBancarios.get('dados_titular');
let cpf = array.at(0).get("cpf");
我认为你也可以这样做(但我不确定 FormArray 的 [0]
)。请参阅docs
this.formDadosBancarios.get('dados_titular[0].cpf'); //maybe it's ".0" instead of "[0]"
this.formDadosBancarios.get(['dados_titular',0,'cpf']);
关于javascript - 访问嵌套 formGroup 内的表单属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42956302/