【发布时间】:2019-01-25 19:33:46
【问题描述】:
使用 Angular 响应式表单验证电子邮件。
我添加了 Validators Required 和 Validators Email,但它同时显示如下图所示。我只想一次显示一个错误。
HTML 代码:
<form [formGroup]="NamFomNgs">
<label>Email :
<input type="email" name="MylHtm" formControlName="MylNgs">
</label><br>
<div class="ErrMsgCls" *ngIf="(NamFomNgs.controls['MylNgs'].touched || NamFomNgs.controls['MylNgs'].dirty) &&
!NamFomNgs.controls['MylNgs'].valid">
<span *ngIf="NamFomNgs.controls['MylNgs'].errors.required">This field is required</span>
<span *ngIf="NamFomNgs.controls['MylNgs'].errors.email">Enter valid email</span>
</div><br>
<button [disabled]="!NamFomNgs.valid">Submit</button>
</form>
打字稿代码:
NamFomNgs:FormGroup;
constructor(private NavPkjVaj: ActivatedRoute, private HtpCncMgrVaj: HttpClient,private FomNgsPkjVaj: FormBuilder)
{
this.NamFomNgs = FomNgsPkjVaj.group(
{
MylNgs:[null,Validators.compose([
Validators.required,
Validators.email ])]
});
}
我觉得这是一个角度形式的错误。
【问题讨论】:
-
奇怪,我不知道你使用完全相同的代码得到的错误。 stackblitz.com/edit/so-email-val
-
这是一个怎样的错误?您有两个错误,并且您构建您的 html 以独立显示每个错误(如果存在)。
标签: javascript angular validation email angular-reactive-forms