Angular Реактивная форма Используйте форму FormControl в другой форме - PullRequest
0 голосов
/ 23 марта 2020

Я хотел бы знать, как использовать форму управления orga (из регистрационной формы) в моей другой группе «Пенсионная форма»

//Custom validator
 organismeValidator(control: FormControl) {
this.serviceHttp.getAllPensions().subscribe(resp => {
  this.pensionsInvalidite = resp;
  for (let pension of this.pensionsInvaliditesort) {
    if (!pension.dtFin) {
      if (this.registrationForm('orga').value === pension.organisme.code) {  //error : "this expression is not callable
        return { organismeValidator: true };
        break;
      }
    }
  } return null;
})


//Declaration of form groups
this.registrationForm = this.fb.group({
  orga: ['', [Validators.required]],
});
  this.pensionForm = this.fb.group(
  {
    dtDebut: ['', Validators.required],
    dtFin: [''],
    montant: ['', Validators.required],
  },
  { validators: [this.dateValidator, this.organismeValidator] },
);

1 Ответ

0 голосов
/ 23 марта 2020

Вы можете реализовать часть формы в компоненте, который реализует ControlValueAccessor. Тогда вы сможете использовать его, как если бы это был FormControl.

. Для полного рабочего примера взгляните на этот Stackblitz

...