【发布时间】:2019-11-23 20:27:53
【问题描述】:
我有一个用于两个 FormGroup 的 FormGroup 组合,我想动态设置验证,但我无法访问组件来设置它
我试过这个: this.formGroupFather.get('formGroupSon1').controls['componentA'].setValidators(XXXXX)
------------------------------------------ V2 ----- ---------------------
我有这样的结构:
<form [formGroup] = "configuracion" (ngSubmit)="onSubmit()">
<div class="row" id="ConfigFacturacion">
<!-- COL 1 -->
<div class="col px-4">
<form formGroupName="configPT">
<input type="text" formControlName="prubA">
</form>
</div>
<!-- COL 2 -->
<div class="col px-4">
<form formGroupName="configVS">
<input type="text" formControlName="prubB">
</form>
</div>
</div>
</form>
我可以使用一个简单的表单来创建动态验证器: this.formSimple.controls['field'].setValidators([Validators.required]);
但是如果我以我的 compiste 形式尝试这个: this.configuracion.get('configPT').controls['prubA'].setValidators([Validators.required]);
抛出这个错误: core.js:15723 错误类型错误:无法读取未定义的属性“setValidators”
【问题讨论】:
-
能否请您添加您遇到的确切错误,或者更好地创建一个 stackblitz/jsfiddle 来显示您面临的问题?
-
你有一个包含一些最少代码的示例 stackblitz 吗?
-
我想这就是你要找的ViewChild
-
另外,这两个表单组是两个不同组件的一部分吗?组件结构是什么样的?
-
你能分享一些代码吗?
标签: angular validation formgroups