我尝试基于其他字段验证表单字段值,所以我写了一个自定义验证器,当我试图获取其他字段时抛出错误我尝试了以下代码,请帮助我提前感谢
export class CreatesessionComponent implements OnInit { eventform : FormGroup ; constructor(private formBuilder: FormBuilder) { } ngOnInit() { this.eventform = this.formBuilder.group({ eventname : new FormControl(''[Validators.required,Validators.pattern('[A-Za-z]+')]),userlive : new FormControl('',[Validators.required,this.maxuser]),totaluser :new FormControl('',this.totaluser]) }); } totaluser(control : FormGroup) : {[s:string ]: boolean} { console.log(control.controls['eventname'].value) // if(control.value > 20){ // return { total : true }; // } return null; }
在控制台中出错,因为无法读取’eventname’未定义的属性
解决方法
我目前正在做这样的事情.为了让它工作,我得到控件组,然后搜索该组以获得所需的控件
totaluser(control : AbstractControl) : {[s:string ]: boolean} { const group = control.parent; if (group) { console.log(group.controls['eventname'].value) } return null; }