我有类似下面的代码,我想要如果我单击Child Div,则不应触发Parent Div click事件。
<div class="parentDiv" (click)="parentDiv()">
<div class="childDiv" (click)="childDiv()">Child Container</div>
</div>
当我单击“ childDiv ”时,它首先触发“ parentDiv()”事件,然后触发“ childDiv()”事件。
您能帮我解决吗?
先感谢您
最佳答案
这是您需要的event.stopPropagation();
<div class="childDiv" (click)="childDiv(event)">Child Container</div>
和
childDiv(event) {
event.stopPropagation();
}
在您的情况下发生的事情称为事件传播。
当您单击子div时,click事件会传播到父div。您需要停止该传播。
上面是这样做的方法。
或者,如果您想要单线解决方案,
<div class="childDiv"
(click)="childDiv(event);$event.stopPropagation()" >Child Container</div>