#javascript #html #angular #typescript #angular7
#javascript #HTML #угловой #typescript #angular7
Вопрос:
На самом деле я хочу минус количество, основанное на идентификаторе.Когда пользователь нажимает кнопку на ‘A’, просто количество ‘A’ должно уменьшаться на 1. Этот демонстрационный код stackblitz
HTML
<p *ngFor="let item of arrayOfArray">
Name: {{item.name}} Quantity: {{item.quantity - currentIndex}} <button (click)="addItem(item)">minus Quantity</button>
</p>
Компонент
public currentIndex = 0;
arrayOfArray = [
{id: '1', name: 'A', quantity: '12'},
{id: '2', name: 'B', quantity: '29'},
{id: '3', name: 'C', quantity: '21'},
{id: '4', name: 'D', quantity: '11'}
]
addItem(val){
if(val.id){
this.currentIndex = 1;
}
}
Ответ №1:
Вы делаете это неправильно. проверьте этот демонстрационный код
для html
<p *ngFor="let item of arrayOfArray">
Name: {{item.name}} Quantity: {{item.quantity}}
<button (click)="minusItem(item)">minus Quantity</button>
</p>
minusItem(val){
if(val.id){
for (let ele of this.arrayOfArray) {
if (ele.id === val.id){
ele.quantity--;
break
}
}
}
}