这是由于Angular中的事件传递机制引起的。要解决此问题,可以使用 @Output
将事件从一个组件传递到其父组件,然后再使用 EventEmitter
向其他组件广播该事件。
例如,在父组件中创建以下方法:
onItemClick(item: any) {
this.selectedItem = item;
this.itemSelected.emit(item);
}
然后在父组件的模板中将此方法与子组件的 @Output
事件绑定:
在子组件中,您需要将点击事件绑定到该组件本身,而不是更改父组件中的属性:
Click me
这样可以确保点击事件只影响当前的子组件,而不会更改其他组件。
上一篇:Angular问题:带有getClickEvent的主题
下一篇:Angular问题:Error: ExpressionChangedAfterItHasBeenCheckedError。值为null。