Ich habe eine Angular2 Form mit 2 benutzerdefinierten Validatoren, die ich ein FormControl
passieren:Angular2: Wie können benutzerdefinierte Validatoren in einer bestimmten Reihenfolge angewendet werden?
this.myForm = fb.group({
'CF': ['', [Validators.required, customValidator()], asyncCustomValidator()],
});
Hier ist ein Plunker: https://plnkr.co/edit/pDMKtdC5PqFttfraOPqf (es auf einer alte Angular2 Version basiert).
würde Ich mag das folgende Verhalten erreichen:
Nur wenn der Benutzer die required
und customValidator
Tests besteht, dann kann die asyncCustomValidator
starten (und Anrufe Backend machen).
Wie bekomme ich dieses Verhalten?
Gibt es darüber hinaus einen Unterschied zwischen der Verwendung der Methode compose
und dem Setzen von zwei oder mehr Validatoren im selben Array?
Ist das der richtige "Angular2 Weg"? – smartmouse
Sehen Sie meine Bearbeitung, es ist die Art, wie ich es tun würde. – mikeb
"setValidators und updateValueAndValidity sind die Funktionen, die Sie fast nie anrufen sollten" als jemand hier gepostet: http://StackOverflow.com/a/41847805/2516399 – smartmouse