angular - Angular - 如何根据条件禁用特定 DIV 之外的鼠标单击事件?
问题描述
我正在使用生成角度代码的 RAD 工具,并且我想对特定行为进行一些修改。
我有一个网格,我可以通过单击按钮进入特定行的“编辑”模式,现在一旦进入编辑模式,我想完全禁用包含该网格的 div 外部的鼠标单击,因为如果用户单击外部的某些组件网格,在保存他的编辑之前,它会导致一些错误。
因此,当单击“编辑”按钮时,我想在特定 div 之外停止鼠标事件,并且一旦单击“保存”按钮,我想再次允许鼠标事件无处不在。
我没有要显示的代码,因为它只是一些带有一些按钮标签的 html 代码。
我正在寻找的解决方案只是知道这样做的正确方法是什么,然后我可以自己实现它
解决方案
您可以执行以下操作。查看代码并找到(click)
事件并将 的引用传递MouseEvent
给该事件。
模板:
<div (click)="stopEvent($event)"></div>
然后调用:
stopEvent(e: MouseEvent) {
e.stopPropagation();
}
另一种解决方案是向 div 标签添加禁用:
<div [disabled]="true"></div>