我有一个循环,它生成了20个div。每个div都是来自我的本地对象数组的一个对象。以下是代码:
<div *ngFor="let item of userInventory"
class="col-2 c-pointer"
(click)="addItemToArray(item)">
<img src="{{item.image}}" class="img-fluid"/>
<span class="d-block">{{item.name}}</span>
</div>
当用户点击div(项目)时,它将把该项目添加到数组中:
addItemToArray(item) {
this.itemsToSend.push(item);
item.isAdded = true;
}
用户绝不能在数组中添加相同的项目,但我不想改变
userInventory
数组(或者splice()
它)。我希望它仍然可见,只是在其上更改一些样式,使其看起来像已禁用。同时,当单击该项目时,item.isAdded
变为true
。
我的目标是:当item.isAdded
为true时,在div上禁用(click)事件监听器(并添加一些样式),以便用户无论点击多少次都不能添加相同的项目。在当前的Angular实现中,这是否可行?
if
语句来检查item.isAdded
是否为真或假。如果为真,则添加 (onclick),否则不添加。 - kevinniel