反应式表单 validators.required 不允许值为 0

sra*_*oti 4 angular angular-reactive-forms

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

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

零应该被视为一个值。

Par*_*ain 6

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

inputField: new FormControl(0, [Validators.required])  //valid
inputField: new FormControl('', [Validators.required])  //invalid
Run Code Online (Sandbox Code Playgroud)

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

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