根据 thoughtgram.io ,目前支持的验证器是:
- 必需的
- 最小长度
- 最长长度
- 图案
因此,考虑以下代码( 此处为 plunkr ):
@Component({
selector: 'my-app',
template: `
<form #formRef="ngForm">
<input type="number" [(ngModel)]="firstValue" name="firstValue" min="0" required/>
<input type="text" [(ngModel)]="secondValue" maxlength="5" name="secondValue" required/>
<button type="submit"> Submit </button>
</form>
FORM: {{formRef.form | json }}
`
})
export class AppComponent {
firstValue = -22;
secondValue = "eyy macarena!";
}
虽然支持 minlength
,但 min="0"
被角度验证忽略:
那么,要让表单在 firstValue ngModel < 0 时出现错误,我是否需要构建自定义验证器?
原文由 David 发布,翻译遵循 CC BY-SA 4.0 许可协议
要在
min/max validation
number
您需要创建一个Custom Validator
Validators 类目前只有几个验证器,即
Validator: 这是我的号码Validator的低调版本,您可以根据需要进行改进
用法: