【发布时间】:2019-04-24 03:29:05
【问题描述】:
我正在对必填字段和无效的电子邮件地址进行电子邮件验证。 单击提交按钮后,我想对“如果在数据库中找不到电子邮件”进行验证,那么它应该显示一些错误消息,就像我为必需和模式显示的那样。 下面是我的代码。我正在使用 Angular 6 材料设计。
<form [formGroup]='loginForm' id="loginForm">
<mat-form-field>
<mat-label>Email Address</mat-label>
<input matInput placeholder="" formControlName="emailid" required>
<mat-error *ngIf="formControl.emailid.errors && (formControl.emailid.dirty || formControl.emailid.touched)">
<p *ngIf="formControl.emailid.errors.required">Email is required</p>
<p *ngIf="formControl.emailid.errors.pattern">Invalid email address</p>
</mat-error>
</mat-form-field>
<button mat-button type="submit" (click)="login()">Login</button>
</form>
下面是 ts 文件的代码 id。
loginForm: FormGroup;
emailId: any;
status: any;
ngOnInit(){
this.loginForm = this.formBuilder.group({
emailid: ['', [Validators.required, Validators.pattern('^[a-z0-9._%+-]+@[a-z0-9.-]+\.[a-z]{2,4}$')]]
});
}
get formControl() { return this.loginForm.controls; }
login() {
this.emailId = this.loginForm.controls['emailid'].value;
this.service.get({{ email: this.emailId}, 'url').subscribe((response) => {
this.result = response;
this.status = this.result.status;
if (this.status === 200) {
//navigate to home page
} else If(this.status === 404) {
console.log("email not found");
// here i want to show this message like aboove i am showing for required and pattern field.
}
});
一旦显示消息,然后在电子邮件输入字段中执行退格后,错误消息应该会消失。如果数据库中没有“电子邮件未找到”消息,如何显示。 任何人都可以帮助我如何实现这一目标。
【问题讨论】:
-
查看此链接@ananya npmjs.com/package/angular-notifier
标签: angular angular6 email-validation angular-material-6