Angular 7 динамически добавлять валидаторы удаления перекрестных полей во время выполнения - PullRequest
0 голосов
/ 23 января 2020

Я использую реактивную форму и использую следующий код для создания моей формы.

this.courseForm = this.formBuilder.group({
  courseCode: ['', Validators.required],
  courseName: ['', Validators.required],
  coursePurpose: [''],
  courseDescription: [''],
  automaticNotifications: [false],
  courseStartDate: [null],
  courseEndDate: [null]
}, {validators: [CourseDatesValidator('courseStartDate', 'courseEndDate')]});

Я хотел бы установить и очистить CourseDatesValidator динамически. Может кто-нибудь помочь, как добиться этого.

Я знаю, как установить и очистить отдельный валидатор formcontrol, как показано ниже:

setCompletion(statusType: string): void {
  const completedDateControl = this.statusForm.get('completedDate');
  if (statusType === 'COMPLETE') {
    completedDateControl.setValidators([Validators.required, (control) => DateValidator.noFutureDate(control)]);
  } else {
    completedDateControl.clearValidators();
  }
  completedDateControl.updateValueAndValidity();
}  
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...