文章來源:http://www.zghlxwxcb.cn/news/detail-847644.html
<el-tree ref="sceneTreeRef" :filter-node-method="filterNode" class="scene-layer-tree" show-checkbox
node-key="nodeKey" :allow-drag="allowDragHandler" :allow-drop="allowDropHandler" @node-drop="handleDrop"
:data="TreeData.list" draggable default-expand-all @check="check">
<template #default="{ data }">
<span :title="data.title" class="tree-item-title">
<i class="fal fa-folder-open" style="color: #f2cc7b; margin: 5px" v-if="data.type == 'group'"></i>
<!-- 可以選擇用一個< span >將整個< el-popover >包起來,給span加 一個 @click.stop,即可阻止冒泡 -->
<span @click.stop>
<el-popover placement="top" :width="200" trigger="click" class="propovers">
<template #reference>
<i class="fal fa-cog icon-setting"></i>
</template>
<template #default>
<div class="edit-item" v-if="data.type != 'root'" @click=editLayer(data)>
<i class="fal fa-edit"></i>
<span>{{ $t("x_edit") }}</span>
</div>
<div class="edit-item" v-if="data.type == 'group' || data.type == 'root'"
@click="addNewLayer(data)">
<i class="fal fa-layer-plus"></i>
<span>{{ $t("x_add_a_new_layer") }}</span>
</div>
<div class="edit-item" v-if="data.type == 'group' || data.type == 'root'"
@click="addFolder(data)">
<i class="fal fa-folder-plus"></i>
<span>{{ $t("x_add_folders") }}</span>
</div>
<div class="edit-item" v-if="data.type != 'root'" @click="deleteLayerFromTree(data)">
<i class="fal fa-trash-alt"></i>
<span>{{ $t("x_delete") }}</span>
</div>
</template>
</el-popover>
</span>
{{ data.title }}
</span>
</template>
</el-tree>
解決方法: 可以選擇用一個< span >將整個< el-popover >包起來,給span加 一個 @click.stop,即可阻止冒泡文章來源地址http://www.zghlxwxcb.cn/news/detail-847644.html
到了這里,關于el-tree與el-popover配合使用避免事件冒泡的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!