Я занимаюсь разработкой углового проекта с использованием Angular версии 7. У меня есть таблица, в которой показаны некоторые объекты json.В каждый объект json я добавил 2 кнопки, которые я показываю условно при выборе каждой из них.
Я имею в виду, что когда я нажимаю кнопку «Редактировать», я хочу, чтобы кнопка «Нет редактирования» отображалась, и наоборот, ТОЛЬКО ДЛЯ СТРОКИ, НА КОТОРОЙ Я НАЖИМАЛ КНОПКУ.Но происходит следующее: когда я нажимаю кнопку «Изменить» для определенной строки, все остальные кнопки для других строк меняются.
Как это сделать?
myapp.component.html файл:
<table>
<thead>
<tr>
<th scope="col" translate>Name</th>
<th scope="col" translate>Description</th>
</tr>
</thead>
<tbody>
<tr *ngFor=" let product of products">
<td>{{product.name}}</td>
<td>{{datasource.description}}</td>
<td>
<button *ngIf="allowEdit" (click)="edit(product)">
Edit
</button>
<button *ngIf="allowNoEdit" (click)="noEdit(product)">
No Edit
</button>
</td>
</tr>
</tbody>
</table>
myapp.component.ts файл:
allowEdit: boolean = true;
allowNoEdit: boolean = false;
edit(product) {
this.allowEdit= !this.allowEdit;
this.allowNoEdit= !this.allowNoEdit;
}
noEdit(product) {
this.allowEdit= !this.allowEdit;
this.allowNoEdit= !this.allowNoEdit;
}