vue 部门tree样式_vue element-ui-tree样式总结

项目要实现一个右键点击tree节点弹出菜单的需求。

右键菜单具体实现如下:

#menu {

width: auto;

height: auto;

background: #fff;

position: absolute;

z-index: 100;

list-style: none;

padding: 5px;

margin:0;

font-size: 14px;

background: #fff;

box-shadow: 3px 3px 10px rgb(168, 168, 168);

cursor: pointer;

.menu-item {

display: block;

padding: 5px;

color: #555;

}

.icon {

color: rgb(64, 158, 255);

}

}

mounted () {this.$nextTick(() =>{

document.querySelector('body').addEventListener('click', this.handleBodyClick);

});

},

handleBodyClick () {this.menuVisible = false;

},

tree的hover与选中

.el-tree-node__content {&:hover {

background: #89c2f7;

}

}

.el-tree-node:focus>.el-tree-node__content{

background-color: #5daaf0;

}

this.menuVisible = true;

let menu= document.querySelector('#menu');/*菜单定位基于鼠标点击位置*/menu.style.left= event.clientX - 220 + 'px';

menu.style.top= event.clientY - 150 + 'px';

/* 鼠标跟随:注意当内容超出一屏要加上scrollTop的距离 */

elementUI - tree横向滚动问题

.tree{overflow:auto;width:80px;height:500px;

}.el-tree{min-width:100%;display:inline-block !important;

}

1.从element里面找到了自定义的。(详见UI中tree自定义节点内容)。

2.直接上代码。

renderContent (h, { node, data, store }) {return h('span', {

style: {

color:'#606266'},

on: {//'contextmenu': () => {

//Vue.set(data, 'is_show', true);

//},

'mouseenter': () =>{//Vue.set(data, 'is_show', true);

},'mouseleave': () =>{//Vue.set(data, 'is_show', false);

}

}

}, [

h('span', {

}, node.label),

h('span', {

style: {

display: data.is_show? '' : 'none'}

}, [

h('el-button', {

props: {

type:'text',

size:'small'},

style: {

marginLeft:'15px'},

on: {

click: ()=>{this.addSubClassify('addSub');

Vue.set(data,'is_show', false);

}

}

},'新增子分类'),

h('el-button', {

props: {

type:'text',

size:'small'},

style: {

},

on: {

click: ()=>{this.editClassify('editSub');

Vue.set(data,'is_show', false);

}

}

},'编辑分类'),

h('el-button', {

props: {

type:'text',

size:'small'},

style: {

},

on: {

click: ()=>{this.deleteClassify('deleteClassify');

Vue.set(data,'is_show', false);

}

}

},'删除分类'),

h('el-button', {

props: {

type:'text',

size:'small'},

style: {

},

on: {

click: ()=>{this.addTable();

Vue.set(data,'is_show', false);

}

}

},'新增表')

])

]);

},

3.摘自网上相关参考链接。

1)https://blog.csdn.net/Bonjourjw/article/details/80805463

2)https://blog.csdn.net/bonjourjw/article/details/81108951

3)https://blog.csdn.net/wxfdpp/article/details/83624460

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值