javascript - 如果单击子angular2,如何停止父请求

标签 javascript angular typescript angular2-template

我有类似下面的代码,我想如果我点击了 Child Div,那么 Parent Div 点击事件不应该触发。

<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 时,单击事件会传播到父 div。您需要停止这种传播。

以上是实现的方法。

或者,如果你想要一个单行解决方案,它
<div class="childDiv"
 (click)="childDiv(event);$event.stopPropagation()" >Child Container</div>

关于javascript - 如果单击子angular2,如何停止父请求,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49914858/

相关文章:

javascript - WordPress 网站缩小 Javascript 和 CSS

javascript - 将 id 作为函数参数传递

javascript - typeorm如何写入不同的数据库?

typescript 如何检查具有多种类型的对象的类型

typescript - 如何使用映射类型获取对象类型的可选部分?

javascript - 为什么这段 JavaScript 代码在 Firefox 中无效?

javascript - Powershell脚本;单击 JavaScript 链接

javascript - 更改 href 属性在 jQuery Mobile 中不起作用

Angular 9 : Use component as directive

javascript - Typescript 中用于存储任何组件的数据类型