Динамически addControl для formgroup Angular 5

Попытка динамически добавить новую запись formControl в мою группу форм в Angular.

method() {
  this.testForm.addControl('new', ('', Validators.required));
}

Можно ли это сделать?

Ответ 1

Конечно, но вторым параметром должен быть экземпляр FormControl. Что-то вроде:

this.testForm.addControl('new', new FormControl('', Validators.required));

вы также можете добавить валидаторы динамически, если хотите, с помощью метода setValidators.

Информация здесь: https://angular.io/api/forms/FormGroup#addControl

Ответ 2

Если вы используете FormBuilder для своей формы, вы также можете использовать ее для добавления FormBuilder управления:

constructor(private fb: FormBuilder) { }

method() {
  this.testForm.addControl('new', this.fb.control('', Validators.required));
}

Ответ 3

Как Сиро ответил на ваш вопрос, вы можете использовать метод addControl для добавления новых входов в вашу группу форм. У меня есть небольшой проект, который изучал динамические формы. Я надеюсь, что будет полезно.

https://stackblitz.com/edit/angular-eypxbq?embed=1&file=src/app/app.component.html