vue项⽬中el-tree⽀持横向和纵向滚动条设置vue项⽬中el-tree ⽀持横向和纵向滚动条设置,如下所⽰。
①纵向滚动条容易设置,只需要在el-tree组件中设置height即可
②横向滚动条稍微复杂,如下代码
<template>
<div class="tree-scroll">
<el-input
placeholder="输⼊关键字进⾏过滤"
v-model="filterText">
</el-input>
<el-tree
class="flow-tree"
:data="data2"
html横向滚动条样式:
props="defaultProps"
default-expand-all
:filter-node-method="filterNode"
ref="tree2">
</el-tree>
</div>
</template>
<script>
export default {
name: "TreeScroll",
name: "TreeScroll",
watch: {
filterText(val) {
this.$2.filter(val);
}
},
methods: {
filterNode(value, data) {
if (!value) return true;
return data.label.indexOf(value) !== -1;
}
},
data() {
return {
filterText: '',
data2: [{
id: 1,
label: '⼀级 1',
children: [{
id: 4,
label: '⼆级 1-1',
children: [{
id: 9,
label: '三级 1-1-1'
}, {
id: 10,
label: '三级 1-1-2'
}]
}]
}, {
id: 2,
label: '⼀级 2',
children: [{
id: 5,
label: '⼆级 2-1'
}, {
id: 6,
label: '⼆级 2-2'
}]
}, {
id: 3,
label: '⼀级 3',
children: [{
id: 7,
label: '⼆级 3-1'
}, {
id: 8,
label: '⼆级 3-2滚动条滚动条⼆级 3-2滚动条滚动条'                    }]
}, {
id: 4,
label: '⼀级 4',
children: [{
id: 71,
label: '⼆级 4-1'
}, {
id: 81,
label: '⼆级 4-2滚动条滚动条⼆级 3-2滚动条滚动条'                    }]
}, {
id: 5,
label: '⼀级 5',
children: [{
id: 711,
label: '⼆级 5-1'
}, {
id: 811,
label: '⼆级 5-2滚动条滚动条⼆级 3-2滚动条滚动条'                    }]
}, {
id: 6,
label: '⼀级 6',
children: [{
id: 7116,
label: '⼆级 5-1'
}, {
id: 8116,
label: '⼆级 5-2滚动条滚动条⼆级 3-2滚动条滚动条'                    }]
}],
defaultProps: {
children: 'children',
label: 'label'
}
};
}
}
</script>
<style scoped lang="stylus">
.tree-scroll{
width 200px
border 1px solid #E7E7E7
height 100%
}
.flow-tree{
overflow auto
height 300px
margin  10px
>>>.el-tree-node{
> .el-tree-node__children{
overflow visible !important
}
}
}
</style>
说明:
(1)在el-tree组件中定义 class元素class=“flow-tree”(2)在class 样式中写如下代码即可。
.flow-tree{
overflow auto;
flex 1
height 300px
margin  10px
>>>.el-tree-node{
> .el-tree-node__children{
overflow visible !important
}
}
}
其他说明:el-tree 中写的样式中overflow为hidden
.el-tree-node__children{
overflow hidden
}
对overflow的认识:
定义和⽤法
overflow 属性规定当内容溢出元素框时发⽣的事情。
说明
这个属性定义溢出元素内容区的内容会如何处理。如果值为 scroll,不论是否需要,⽤户代理都会提供⼀种滚动机制。因此,有可能即使元素框中可以放下所有内容也会出现滚动条。
可能的值
值描述
visible 默认值。内容不会被修剪,会呈现在元素框之外。
hidden内容会被修剪,并且其余内容是不可见的。
scroll内容会被修剪,但是浏览器会显⽰滚动条以便查看其余的内容。
auto如果内容被修剪,则浏览器会显⽰滚动条以便查看其余的内容。
inherit规定应该从⽗元素继承 overflow 属性的值。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。