<el-tree
ref="tree"
:expand-on-click-node="false"
:default-expand-all="true"
:data="dataTree"
node-key="id"
accordion
empty-text="暂无数据"
highlight-current
>
<span class="d-flex span-ellipsis" slot-scope="{node,data}" @mouseleave="mouseleave(data,$event)">
<span class="node-title" :title="node.label" @mouseover="mouseover(data,$event)">
{{node.label}}
</span>
<el-dropdown class="node-icon none">
<span class="el-dropdown-link">
<i class="el-icon-setting"></i>
</span>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item @click.native="createDep(node,data)">创建部门</el-dropdown-item>
<el-dropdown-item @click.native="editDep(node,data)">编辑部门</el-dropdown-item>
<el-dropdown-item @click.native="deleteDep(node,data)">删除部门</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
</span>
</el-tree>
mouseleave(data,$event){
this.$emit("mouseleave", data, $event);
}
mouseover(data,$event){
this.$emit("mouseover", data, $event);
}
引用组件:
在这里插入代码片
<tree
:dataTree="dataTree"
@mouseleave="mouseleave"
@mouseover="mouseover"
@createDep="createDep"
@editDep="editDep"
@deleteDep="deleteDep"
ref="tree" />
mouseleave(data,$event){ $event.currentTarget.firstElementChild.nextElementSibling.nextElementSibling.setAttribute('class','node-icon none el-dropdown-link')
},
mouseover(data,$event){$event.currentTarget.nextElementSibling.nextElementSibling.setAttribute('class','node-icon block el-dropdown-link');
},
以上就是全部代码