フォーム要素
この .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)){ リターン {確認:真、エラー:真}; } }