Validators.email指令无法正常工作

时间:2018-08-24 09:23:50

标签: angular

我正在使用Validators.email指令(https://angular.io/api/forms/EmailValidator)检查电子邮件ID的结构是否正确。但是,我注意到它传递了hello.com@com输入。这是预期的行为吗?代码示例位于https://stackblitz.com/edit/angular-xesgxe

检查createForm()中的signup-component.component.ts功能

1 个答案:

答案 0 :(得分:1)

正如enf0rcer在他的评论中所说,这是正确的行为。但是,如果您不满意,可以在signup-component.component.ts中使用以下代码。

export class SignupComponentComponent implements OnInit{

  EMAIL_PATTERN = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;

  constructor() {}

  createForm(){
    this.signupForm = this.fb.group({
      email:[null,[Validators.required,Validators.pattern(this.EMAIL_PATTERN)]],
    });
  }
}

查看更新后的example