Tworzę aplikację w Angular (4.0), która zawiera formularz (FormGroup
). W tym formularzu mam dane wejściowe do wiadomości e-mail (z FormControl
) i używam Validators.email
do sprawdzania poprawności.Angular: Validators.email jest nieprawidłowy, jeśli pusty
import { Validators } from '@angular/forms';
// ...
let validators = [];
if ([condition]) {
validators.push(Validators.email);
}
let fc = new FormControl([value] || '', validators);
// ...
Ale gdy wejście jest pusta, jest ona nieważna (posiada klasę ng-invalid
), nawet jeśli nie jest to wymagane.
Czy to właściwe zachowanie? Co mogę zrobić?
Spójrz na to [** numer **] (https://github.com/angular/angular/issues/16183). – developer033
Więc nie ma jeszcze rozwiązania? Czy zamiast tego powinienem użyć Validators.pattern? @ developer033 –
Tak, w tym przypadku na razie lepiej użyć 'Validatos.pattern'. – developer033