Я борюсь с распространением событий. Задача состоит в том, чтобы не нажимать на что-либо еще, если данные не сохранены. Итак, левый 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
пакет используется для обнаружения кликов за пределами div. Работает нормально. Проблема в том, что этот код ничего не делает:
checkIfSaved : function (event, el)
{
event.stopPropagation();
event.preventDefault();
},
Клик все равно распространяется на родителя. Если я помещаю событие @click
в родительское событие, оно запускается всеми щелчками.
Останавливает ли распространение работает только от родителей к детям?