我正在为事件传播而苦苦挣扎。如果未保存数据,任务是防止单击任何其他内容。所以,左边的 div 包含一个选项树。单击项目后,将显示右侧 div 中的设置。我想警告用户,当他尝试在设置 div 之外单击时,数据未保存。
代码如下所示:
<div class="row">
<div class="col-sm-6">
<tree
:data="treeData">
.. some tree data
</tree>
</div>
<div class="col-sm-6">
<div class="treeOptionEdit" v-if="showEditBox" v-click-outside.stop="checkIfSaved">
... setting input fields
vue-outside-events
package 用于检测 div 之外的点击。它工作正常。问题是,这段代码没有做任何事情:
checkIfSaved : function (event, el)
{
event.stopPropagation();
event.preventDefault();
},
无论如何,点击都会传播到父级。如果我将事件@click
发送给父级,则会触发所有点击。
停止传播是否仅在父母之间有效?