我在Angular 2中有一个表单,使用Validators进行简单验证。
<form role="form" #myForm="ngForm" (ngSubmit)="submit()" novalidate [ngFormModel]="form">
<div class="form-group list-element">
<label for="name">name*</label>
<input type="text" name="name" class="form-control" ngControl="name"
#name="ngForm" placeholder="Enter name" [(ngModel)]=user.name >
</div>
</form>
ngOnInit() {
this.form = new ControlGroup({
name: new Control('', Validators.compose([
Validators.required,
Validators.pattern("(([a-zA-Z ]|[0-9])+)*"),
Validators.minLength(5),
Validators.maxLength(80)
]))
});
}
当我在输入字段中键入快速(随机)字符时(例如#1KZBZKBjkndedjk@@@kjbzdzdékj!
),应用程序崩溃。这不会总是发生,所以我没有真正注意到一个模式。
答案 0 :(得分:3)
这是一个已知问题https://github.com/angular/angular/issues/7822,并且可能会在此请求落实https://github.com/angular/angular/pull/7421
时修复答案 1 :(得分:1)
首先,这与AngularJS无关。
这是因为您的模式错误我不知道您需要什么模式但是例如如果您需要验证电子邮件然后使用此模式 &安培;只需检查你的模式。
你的代码......
Validators.pattern(“^ [_ A-Z0-9] +([_ A-Z0-9] +)的 @ [A-Z0-9 - ]。。+([A-z0-9- ] +)(。[AZ] {2,4})$“),
你的代码结束......
那就是它!