首页 > 解决方案 > 反应形式 validators.required 不允许值为 0

问题描述

inputField: new FormControl('', [Validators.required])

当用户在字段中输入“0”时,所需的错误将应用于控件。

零应该被视为一个值。

标签: angularangular-reactive-forms

解决方案


默认情况下,如果您在 formControl 元素中输入任何内容,角度形式会将其视为真实值 -

inputField: new FormControl(0, [Validators.required])  //valid
inputField: new FormControl('', [Validators.required])  //invalid

但是,是的,您也可以添加一些正则表达式模式来0仅检查值匹配,例如 -

inputField = new FormControl(0, [Validators.required, Validators.pattern(/^[1-9]*$/)])

推荐阅读