특정 필드에서 조건부 필수 유효성 검사를 만들려고합니다.이 작업은 내 함수에서 다시 Validator.required로 수행하지만이 방법은 효과가없는 것 같습니다. 어떻게해야합니까? 내 코드는 다음과 같습니다.Angular2 : 조건부 필수 유효성 검사
private _ansat: AbstractControl = new FormControl('', Validators.required);
private _helbred: AbstractControl = new FormControl('', Validators.compose([this.useValidateIfRadio(this._ansat, 0, Validators.required)]));
constructor(private _fb: FormBuilder) {
this.myForm = this._fb.group({
ansat: this._ansat,
helbred: this._helbred
});
}
useValidateIfRadio (c: AbstractControl, n: number, v) {
return function (control) {
return new Promise(resolve => {
// this.msg = ansatControl.value;
console.log(v);
if (c.value === n) {
resolve(v);
}
else {
resolve(null);
}
});
};
};
모든 도움을 주시면 감사하겠습니다.
당신이이 문제를 해결 했습니까? 나는 대답을 추가했고 당신이 같은 방식으로 (또는 더 나은 방법으로) 그것을 해결한다면 궁금하다. – Erex
나는 다음과 같이 재사용 가능한 사용자 정의 검사기로 유사한 문제를 해결했다 : [Conditional Required] (http : // stackoverflow. co.kr/questions/38204812/angular2-forms-valid-with-interrelated-fields/40416197 # 40416197) –
아, 천재적입니다! 나는 그 때 당신의 해결책을 시험 할 것이다! – Erex