一般的なユーザー情報フォームバリデーション

フォーム要素

この .validateForm = この.fb.group({ 
      アカウント:[ ヌル、[Validators.required、この.accountValidator]] //账户
      パスワード:[ ヌル、[Validators.required、この.passwordValidator]] //密码
      のcheckpassword :[ nullで、[Validators.required、この.confirmationValidator]]、//确认密码
      名:[ nullで、[Validators.required、この.usernameValidator]]、//用户名
      にphoneNumber:[ nullで、[Validators.required、この.phoneValidator]]、//手机号
    });

 

アカウント(英語、数字3-10ビット)

// 账户校验 
  公共accountValidator =(対照:FormControl):{[S:文字列]:ブール } => { 
    EMAIL_REGEXP CONST = / ^ [-ZA-Z0-9] {3,10} $ / もし(!control.value){
       リターン {必要:}; 
    } それ以外の 場合(!EMAIL_REGEXP.test(control.value)){
       リターン {確認:、エラー:}; 
    } 
  }

ユーザー名(英語3-10)

公共usernameValidator =(対照:FormControl):{[S:文字列]:ブール => { 
    CONST EMAIL_REGEXP = / ^ [\ u2E80- \ u9FFFa-ZA-Z] {3,10} $ / もし(!control.value){
       リターン {必要:}; 
    } それ以外の 場合(!EMAIL_REGEXP.test(control.value)){
       リターン {確認:、エラー:}; 
    } 
  }

パスワード(英語、数字、文字6-16)

公共passwordValidator =(対照:FormControl):{[S:文字列]:ブール } => { 
    CONST EMAIL_REGEXP = /^[A-Za-z0-9#.$@!~%^&*]{6,16} $ / ;
    もし(!control.value){
       リターン {必要:}; 
    } それ以外の 場合(!EMAIL_REGEXP.test(control.value)){
       リターン {確認:、エラー:}; 
    } 
  }

パスワードの確認

公共confirmationValidator =(対照:FormControl):{[S:文字列]:ブール } => {
     場合(!のcontrol.value){
       リターン {必要:}。
    } それ以外の 場合(control.value ==!この .validateForm.controls [ 'パスワード' .VALUE]){
       リターン {確認:、エラー:}; 
    } 
  }

 

連絡先(11電話番号、固定電話)

公共phoneValidator =(対照:FormControl):{[S:文字列]:ブール } => { 
    EMAIL_REGEXP CONST = / ^((0 \ D {2,3} - \ dは{7,8})|(1 [34578 ] \ D {9}))$ / もし(!control.value){
       リターン {必要:}; 
    } それ以外の 場合(!EMAIL_REGEXP.test(control.value)){
       リターン {確認:、エラー:}; 
    } 
  }

おすすめ

転載: www.cnblogs.com/zhuangcui/p/12134637.html