• 树形控件加自定义图标样式及指引线


    记录一下留用,有错误请指正。

    效果图如下:

    自定义图标及指引线

    代码:

    1. class="head-container" style="margin-left: -15px;">
    2. <el-tree icon-class="none"
    3. style="height:100%; overflow-y: hidden;"
    4. node-key="id"
    5. class="tree-line"
    6. :data="deptOptions"
    7. :props="defaultProps"
    8. :expand-on-click-node="false"
    9. :filter-node-method="filterNode"
    10. ref="tree"
    11. default-expand-all
    12. highlight-current
    13. @node-click="handleNodeClick"
    14. >
    15. <span class="custom-icon" slot-scope="{ node,data }" :style="getStyle(node)">
    16. <span :class="getIconClass(node)" :style="getIconStyle(node)"
    17. v-if="node.data.children.length!==0" @click.stop="handleClick(node)">span>
    18. <span style="margin: 0px 5px 0px 15px;" v-else>span>
    19. <i class="el-icon-house" v-if="node.level == 1">i>
    20. <i class="el-icon-folder" v-else-if="node.level == 2">i>
    21. <i class="el-icon-document" v-else-if="node.level == 3">i>
    22. <i class="el-icon-document-copy" v-else>i>
    23. {{ data.name }}
    24. span>
    25. el-tree>
    1. deptOptions: [],
    2. defaultProps: {
    3. children: "children",
    4. label: "label",
    5. },

    js部分:

    1. // 筛选节点
    2. filterNode(value, data) {
    3. if (!value) return true;
    4. return data.label.indexOf(value) !== -1;
    5. },
    6. // 节点单击事件
    7. handleNodeClick(data) {
    8. this.queryParams.deptId = data.id;
    9. this.handleQuery(); // 这里的需求是点击节点,查询对应节点下的数据,根据需求来写
    10. },
    11. handleClick(node) {
    12. node.expanded = !node.expanded
    13. },
    14. // 以下为样式,此章的关键部分
    15. getStyle(node) {
    16. return node.level === 1 ? this.style : null
    17. },
    18. getIconStyle(node) {
    19. return node.level === 1 ? 'padding: 0px;border: 0.8px solid red;margin: 0px 5px 0px 5px;' : 'padding: 0px;border: 0.8px solid #36383d;margin: 0px 5px 0px 2px;'
    20. },
    21. getIconClass(node) {
    22. return node.expanded ? 'el-icon-minus' : 'el-icon-plus'
    23. },

    css样式

    1. .custom-icon {
    2. color: #36383d;
    3. font-size: 13px;
    4. margin-left: 5px;
    5. }

  • 相关阅读:
    各种生成模型:VAE、GAN、flow、DDPM、autoregressive models
    Synchronized锁升级原理与过程深入剖析
    ElasticSearch 使用 searchAfter() 进行遍历查询 查到的数据总数小于 totalHits
    java中switch同if关键字的不同之处
    CPU核心、使用率、负荷、是否开启超线程、如何排查java程序cpu使用率过高
    【中兴】web训练营~一文带你走进前端 百图制作
    垂直领域对话系统架构
    Android数据存储及Room数据库的使用和原理分析
    windows查看连接过wifi的密码
    【python】-详解进程与线程
  • 原文地址:https://blog.csdn.net/m0_45305745/article/details/132734061