W angular2 chcę wyzwolić walidatory dla niektórych kontrolek, gdy zmieniona zostanie inna kontrolka. Czy istnieje sposób, w jaki mogę po prostu nakazać formularzowi, aby ponownie zweryfikował? Jeszcze lepiej, czy mogę poprosić o weryfikację określonych pól?
Przykład: Biorąc pod uwagę pole wyboru X i wejście P. Wejście P ma walidator, który zachowuje się inaczej w zależności od wartości modelu X. Gdy X jest zaznaczone / odznaczone, muszę wywołać walidator na P. Walidator na P spojrzy na model, aby określi stan X i odpowiednio zweryfikuje P.
Oto kod:
constructor(builder: FormBuilder) {
this.formData = { num: '', checkbox: false };
this.formGp = builder.group({
numberFld: [this.formData.num, myValidators.numericRange],
checkboxFld: [this.formData.checkbox],
});
}
this.formGp.controls['checkboxFld'].valueChanges.observer({
next: (value) => {
// I want to be able to do something like the following line:
this.formGp.controls['numberFld'].validator(this.formGp.controls['numberFld']);
}
});
Czy ktoś ma rozwiązanie? Dzięki!