В вашем стеке есть ошибка
Ошибка: не удается найти элемент управления с неопределенным атрибутом имени
сообщает вам, что элемент управления country
не может быть найден на компоненте. В коде есть свойство getter, которое не возвращает FormControl
, чего ожидает шаблон. У вас есть несколько вариантов.
Обновите метод получения, чтобы он возвращал FormControl
и , а не a string
get country(): FormControl {
return this.form.controls['country'] as FormControl;
}
Удалите геттер и обновите шаблон, чтобы найти элемент управления в FormGroup
[formControl]="form.controls.country"
Удалите геттер и создайте прямую ссылку на FormControl
на компоненте.
form: FormGroup;
country: FormControl;
constructor() {
this.country = new FormControl();
this.form = new FormGroup({
country: this.country,
});
}
Редактировать
Для получения названия используйте безопасный оператор навигации ?.
{{form.controls.country.value?.name}} - selected text goes here
Stackblitz