如何使用formBuilder实时修改字段的验证

时间:2018-07-21 17:59:03

标签: angular

我正在使用formBuilder构建我的表单的验证。但我想修改其中之一的规则(cellphone字段)。我有这样的东西:

this.register= this.formBuilder.group({
 cellphone:[
  null,
  Validators.compose([Validators.required, Validators.maxLength(50)])
 ]
})

例如,我想修改cellphone字段maxlenght的验证值为5。

如何实时更新此规则?

function updateRulerCellphone(){ 
  //modify rule
}

1 个答案:

答案 0 :(得分:2)

您可以使用setValidators()来动态添加Validators以形成控件

this.register.controls["cellphone"].setValidators([Validators.required, Validators.maxLength(5)]);
this.register.controls["cellphone"].updateValueAndValidity();