要解决Angular 8中嵌套的ngFor单击事件影响所有其他项目的问题,可以使用一个单独的变量来跟踪当前被单击的项目,并在单击事件中更新该变量。以下是一个示例解决方法:
在组件类中定义一个变量来跟踪当前被单击的项目:
selectedItem: any;
在模板中使用ngFor循环来显示项目列表,并将点击事件绑定到每个项目:
{{ item.name }}
在组件类中实现selectItem方法来更新选中的项目:
selectItem(item: any) {
this.selectedItem = item;
}
现在,您可以在模板中使用selectedItem变量来显示当前选中的项目,并应用任何其他逻辑:
Selected Item:
{{ selectedItem.name }}
这样,单击事件就只会影响当前被单击的项目,而不会影响其他项目。