基于element-ui Tree树形控件 生成 文件目录 缩进树

前几天需要展示一个文件目录,选择到的是AntV G6 的缩进树。
收缩效果确实不错,不过在使用的过程中 遇到了 G6 的 BUG,传入数据对象的最后一层,不能正常展开收缩且会无限循环报错 。
索性就用 element Tree 组件 + border 边框 来制作 缩进图。

这是G6效果
在这里插入图片描述

这是 element 效果
在这里插入图片描述

PS 正常情况下,文件目录缩进树 用图类 做出来的效果肯定会好一点。


首先 element Tree树形组件 先引入

<div id="dataset-label-visual-container" class="mytree">
      <el-tree
        :data="dataList"
        :indent="0"
        node-key="id"
        :props="defaultProps"
        :default-expand-all="true"
        class="filter-tree"
      >
      </el-tree>
    </div>

注意: 要给到 indent=“0” 不然线的间距会很大。 外层 div 给 mytree ,el-tree 给 filter-tree


<style>
.mytree /deep/{
     .el-tree > .el-tree-node:after {
      border-top: none;
    }
    .el-tree-node {
      position: relative;
      padding-left: 16px;
    }
    .el-tree-node__expand-icon.is-leaf{
      display: none;
    }
    .el-tree-node__children {
      padding-left: 25px;
    }
 
    .el-tree-node :last-child:before {
      height: 38px;
    }
 
    .el-tree > .el-tree-node:before {
      border-left: none;
    }
 
    .el-tree > .el-tree-node:after {
      border-top: none;
    }
 
    .el-tree-node:before {
      content: "";
      left: -4px;
      position: absolute;
      right: auto;
      border-width: 1px;
    }
 
    .el-tree-node:after {
      content: "";
      left: -4px;
      position: absolute;
      right: auto;
      border-width: 5px;
    }
 
    .el-tree-node:before {
      border-left: 2px dashed #b8b9bb;
      bottom: 0px;
      height: 100%;
      top: -26px;
      width: 1px;
    }
 
    .el-tree-node:after {
      border-top: 2px dashed #b8b9bb;
      height: 30px;
      top: 12px;
      width: 28px;
    }
    .el-tree-node__label{
      font-size: 20px;
    }
    .el-tree-node__content{
      margin-left: 10px;
      margin-top: 5px;
    }
  }
</style>

把 CSS 样式加上就OK了

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值