Я хочу загрузить существующее значение в FormControl, чтобы иметь возможность обновить значение в моей базе данных.
Мой код (сокращенный и сведенный к примеру) выглядит следующим образом. Нажатие на кнопку редактирования должно загрузить имя ссылки из массива в FormControl.
Компонент приложения
import { Component } from '@angular/core';
import {FormControl, ReactiveFormsModule} from '@angular/forms';
@Component({
selector: 'my-app',
templateUrl: './app.component.html',
styleUrls: [ './app.component.css' ]
})
export class AppComponent {
nameForm = new FormControl(['']);
names = ['Peter', 'Bob', 'Mary']
updateName (id : number): void {
this.nameForm.setValue(this.names[id]);
}
}
HTML -Template
<table>
<tr>
<th>Id</th>
<th>Name</th>
<th>Actions</th>
</tr>
<tr *ngFor="let name of names; index as i">
<td>{{i + 1}} : </td><td>{{name}}</td>
<td>
<button (click)="updateName(i)">Edit</button>
</td>
</tr>
</table>
<input type="text" formControlName="nameForm">
Я построил пример на https://stackblitz.com/edit/angular-m7vm4y. Нажатие на редактирование не устанавливает значение в FormControl. Где моя ошибка?
Спасибо и всего наилучшего!