2017-05-12 4 views
0

Ich möchte einige spezifische Validierungen in einer Form, und ich finde keine elegante Möglichkeit, dies zu tun. Angenommen, ich habe ein Feld, das eine der wenigen Validierungsbeschränkungen erfüllen kann, um gültig zu sein? Die spezifische Validierung für ein Passwort, das ich will, ist:Mehrere Validierungsgruppen in einer eckigen Formgruppe

  • erforderlich
  • max Länge 256 Zeichen
  • min Länge 10 Zeichen
  • Benötigt mindestens eine ganze Zahl
  • Benötigt mindestens ein Symbol
  • Benötigt mindestens einen Großbuchstaben

OR

  • erforderlich
  • max Länge 256 Zeichen
  • min Länge 32 Zeichen

I Validierung wollen eine dieser Gruppen für das gleiche Feld akzeptieren. Gibt es einen eleganten Weg, dies mit eckigen Formen zu tun?

+0

gefunden festlegen können, was ich bin zu raten, dass Sie einen Validator wollen, dass alle die Validierung hat und Sie können Plug-and-die spielen Validierungen, die Sie wünschen? Wenn dies der Fall ist, können Sie eine andere Klasse für Ihren Validator haben und dann den gleichen Funktionsaufruf in Ihrem Formbuilder verwenden –

Antwort

0

können Sie die Validierung so einstellen. und Sie Muster für numerisch, Symbol und alpha

this.userForm = this.formBuilder.group({ 
    password: ['', [Validators.required, Validators.maxLength(256)], Validators.minLength(10) , Validators.pattern('^(?=.*?[A-Z])(?=.*?[a-z])(?=.*?[0-9])(?=.*?[#[email protected]$%^&*-]).{10,}$')], 
    }); 

Muster von here

Verwandte Themen