vue项目使用vue2-org-tree

news2024/10/7 2:20:19

在这里插入图片描述

实现方式

  1. 安装依赖
npm i vue2-org-tree
  1. 使用的vue页面引入

<template>
  <div class="container">
  

    <div class="oTree" >
      <vue2-org-tree name="test"
                     :data="data"
                     :horizontal="horizontal"
                     :collapsable="collapsable"
                     :render-content="renderContent"  
                     :label-class-name="renderLabelClass"
                     @on-expand="onExpand"
                     @on-node-click="handleNodeClick" />
    </div>
  </div>
</template>

<script>
import Vue2OrgTree from 'vue2-org-tree' 
export default {
  components: {Vue2OrgTree},
  data () {
    return {
      data: {
            id: 0,
            label: '流程1',
            name: '188.00',
            children: [
              {
                id: 1,
                label: '流程2',
                children: [
                  {
                    id: 11,
                    label: '流程3',
                    children: [
                      {
                        id: 111,
                        label: '流程4'
                      }
                    ]
                  },
                  {
                    id: 12,
                    label: '流程5',
                    children: [
                      {
                        id: 121,
                        label: '流程6'
                      }
                    ]
                  },
                  {
                    id: 13,
                    label: '流程7',
                    children: [
                      {
                        id: 131,
                        label: '流程8'
                      }
                    ]
                  },
                  {
                    id: 14,
                    label: '流程9',
                    children: [
                      {
                        id: 141,
                        label: '流程10'
                      }
                    ]
                  }
                ]
              },
              {
                id: 2,
                label: '流程11',
                children: [
                  {
                    id: 21,
                    label: '流程12',
                    children: [
                      {
                        id: 211,
                        label: '流程13'
                      },
                      {
                        id: 212,
                        label: '流程14'
                      },
                      {
                        id: 213,
                        label: '流程15'
                      },
                      {
                        id: 214,
                        label: '流程16'
                      },
                      {
                        id: 215,
                        label: '流程17'
                      },
                      {
                        id: 216,
                        label: '流程18'
                      },
                      {
                        id: 217,
                        label: '流程19'
                      },
                      {
                        id: 218,
                        label: '流程20'
                      }
                    ]
                  },
                  {
                    id: 22,
                    label: '流程21',
                    children: [
                      {
                        id: 221,
                        label: '流程22'
                      },
                      {
                        id: 222,
                        label: '流程23'
                      }
                    ]
                  }
                ]
              },
              {
                id: 3,
                label: '流程24',
                children: [
                  {
                    id: 31,
                    label: '流程25'
                  }
                ]
              },
              {
                id: 4,
                label: '流程26',
                children: [
                  {
                    id: 41,
                    label: '流程27'
                  }
                ]
              },
              {
                id: 5,
                label: '流程28',
                children: [
                  {
                    id: 51,
                    label: '流程29',
                    children: [
                      {
                        id: 511,
                        label: '流程30'
                      }
                    ]
                  },
                  {
                    id: 52,
                    label: '流程31',
                    children: [
                      {
                        id: 521,
                        label: '流程32'
                      },
                      {
                        id: 522,
                        label: '流程33'
                      },
                      {
                        id: 523,
                        label: '流程34'
                      }
                    ]
                  },
                  {
                    id: 53,
                    label: '流程35',
                    children: [
                      {
                        id: 531,
                        label: '流程36'
                      },
                      {
                        id: 532,
                        label: '流程37'
                      },
                      {
                        id: 533,
                        label: '流程38'
                      }
                    ]
                  },
                  {
                    id: 54,
                    label: '流程39'
                  },
                  {
                    id: 55,
                    label: '流程40'
                  }
                ]
              },
              {
                id: 6,
                label: '流程41',
                children: [
                  {
                    id: 61,
                    label: '流程42',
                    url: 'https://world.taobao.com/'
                  },
                  {
                    id: 62,
                    label: '流程43',
                    url: 'http://www.baidu.com'
                  },
                  {
                    id: 63,
                    label: '流程44',
                    url: 'https://www.google.com/'
                  }
                ]
              }
            ]
          },

          expandAll: false,
          horizontal: true,
          collapsable: true
    }
  },
  mounted() {
    this.toggleExpand(this.data, true)
  },
  methods:{
     renderLabelClass (node) {
      return node.label.length<16? 'companyItem': 'companyHItem'
    },
    toggleExpand(data, val) {
      if (Array.isArray(data)) {
        data.forEach((item)=> {
          this.$set(item, "expand", val);
          if (item.children) {
            this.toggleExpand(item.children, val);
          }
        });
      } else {
        this.$set(data, "expand", val);
        if (data.children) {
          this.toggleExpand(data.children, val);
        }
      }
    },
    onExpand: function(e, data) {
      if ('expand' in data) {
        data.expand = !data.expand

        if (!data.expand && data.children) {
          console.log('kkkkkkkkkkk')
          this.collapse(data.children)
        }
      } else {
        this.$set(data, 'expand', true)
      }
    },
    collapse: function(list) {
      var _this = this
      console.log(list,'kkkkkkk')
      list.forEach(function(child) {
        console.log(child,'kkkkkkkkkk')
        if (child.expand) {
          child.expand = false
        }

        child.children && _this.collapse(child.children)
      })
    },
    handleNodeClick (e, data) {
     console.log(data)
    },
     renderContent: function (h, data) {
            console.log(data, 'kkkkk')
            return h('div', [
              h('span', data.label),
              h('br'),
              h('span', '已完成')
            ])
          },
  }
};
</script>


</style>

  • :render-content=“renderContent”

    设置label,renderContent 函数中返回一个包含多个文本并换行显示的元素

 renderContent(h, data) {
    return h('div', {
      class: 'custom-node',  // 添加类名也可以使用:label-class-name进行添加
    }, [
      h('span', data.label),
      h('br'),
      h('span', '已完成'),
    ]);
},

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1466521.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【服务器数据恢复】通过reed-solomon算法恢复raid6数据的案例

服务器数据恢复环境&#xff1a; 一台网站服务器中有一组由6块磁盘组建的RAID6磁盘阵列&#xff0c;操作系统层面运行MySQL数据库和存放一些其他类型文件。 服务器故障&#xff1a; 该服务器在工作过程中&#xff0c;raid6磁盘阵列中有两块磁盘先后离线&#xff0c;不知道是管理…

LabVIEW开发FPGA的高速并行视觉检测系统

LabVIEW开发FPGA的高速并行视觉检测系统 随着智能制造的发展&#xff0c;视觉检测在生产线中扮演着越来越重要的角色&#xff0c;尤其是在质量控制方面。传统的基于PLC的视觉检测系统受限于处理速度和准确性&#xff0c;难以满足当前生产需求的高速和高精度要求。为此&#xf…

【python】yolo目标检测模型转为onnx,及trt/engine模型的tensorrt轻量级模型部署

代码参考&#xff1a; Tianxiaomo/pytorch-YOLOv4: PyTorch ,ONNX and TensorRT implementation of YOLOv4 (github.com)https://github.com/Tianxiaomo/pytorch-YOLOv4这个大佬对于各种模型转化写的很全&#xff0c;然后我根据自己的需求修改了部分源码&#xff0c;稍微简化了…

【区块链】联盟链

区块链中的联盟链 写在最前面**FAQs** 联盟链&#xff1a;区块链技术的新兴力量**联盟链的定义****联盟链的技术架构**共识机制智能合约加密技术身份认证 **联盟链的特点**高效性安全性可控性隐私保护 **联盟链的应用场景****金融服务****供应链管理****身份验证****跨境支付**…

VSCODE include错误 找不到 stdio.h

解决办法&#xff1a; Ctrl Shift P 打开命令面板&#xff0c; 键入 “Select Intellisense Configuration”&#xff08;下图是因为我在写文章之前已经用过这个命令&#xff0c;所以这个历史记录出现在了第一行&#xff09; 再选择“Use gcc.exe ”&#xff08;后面的Foun…

网络原理-TCP/IP(7)

目录 网络层 路由选择 数据链路层 认识以太网 以太网帧格式 认识MAC地址 对比理解MAC地址和IP地址 认识MTU ARP协议 ARP协议的作用 ARP协议工作流程 重要应用层协议DNS(Domain Name System) DNS背景 NAT技术 NAT IP转换过程 NAPT NAT技术的优缺点 网络层 路由…

如何将建筑白模叠加到三维地球上?

​ 通过以下方法可以将建筑白模叠加到三维地球上。 方法/步骤 下载三维地图浏览器 http://www.geosaas.com/download/map3dbrowser.exe&#xff0c;安装完成后桌面上出现”三维地图浏览器“图标。 2、双击桌面图标打开”三维地图浏览器“ 3、点击“建筑白模”菜单&…

基于java(Springboot)学生信息管理和新生报到系统设计与实现

博主介绍&#xff1a;黄菊华老师《Vue.js入门与商城开发实战》《微信小程序商城开发》图书作者&#xff0c;CSDN博客专家&#xff0c;在线教育专家&#xff0c;CSDN钻石讲师&#xff1b;专注大学生毕业设计教育和辅导。 所有项目都配有从入门到精通的基础知识视频课程&#xff…

康威生命游戏

康威生命游戏 康威生命游戏(Conway’s Game of Life)是康威发明的细胞自动机。 生命游戏有几个简单的规则&#xff1a; 细胞有两种状态&#xff0c;存活或死亡&#xff0c;每个细胞以自身为中心与周围的八格细胞互动。 对于存活的细胞&#xff1a; 当周围的细胞过少(<2)或…

C# cass10 面积计算

运行环境Visual Studio 2022 c# cad2016 cass10 通过面积计算得到扩展数据&#xff0c;宗地面积 &#xff0c;房屋占地面积&#xff0c;房屋使用面积 一、主要步骤 获取当前AutoCAD应用中的活动文档、数据库和编辑器对象。创建一个选择过滤器&#xff0c;限制用户只能选择&q…

C#最优队列最小堆小顶堆大顶堆小根堆大根堆PriorityQueue的使用

最优队列有多种叫法&#xff0c;什么小根堆&#xff0c;大根堆&#xff0c;小顶堆&#xff0c;大顶堆。 队列分多种&#xff0c;线性队列&#xff08;简单队列&#xff09;&#xff0c;循环队列&#xff0c;最优队列等等。 最优队列&#xff0c;可以看作堆叠箱子&#xff0c;…

【深度学习】LoRA: Low-Rank Adaptation of Large Language Models,论文解读

文章&#xff1a; https://arxiv.org/abs/2106.09685 文章目录 摘要介绍LoRA的特点什么是低秩适应矩阵&#xff1f;什么是适应阶段&#xff1f;低秩适应矩阵被注入到预训练模型的每一层Transformer结构中&#xff0c;这一步是如何做到的&#xff1f; 摘要 自然语言处理的一个重…

vue video 多个视频切换后视频不显示的解决方法

先说一下我这边的需求是视频需要轮播&#xff0c;一个人员有多个视频&#xff0c;左右轮播是轮播某个人员下的视频&#xff0c;上下切换是切换人员。 vue 代码 <el-carouselindicator-position"none"ref"carousel"arrow"always":interval&qu…

CSS 面试题汇总

CSS 面试题汇总 1. 介绍下 BFC 及其应 参考答案&#xff1a; 参考答案&#xff1a; 所谓 BFC&#xff0c;指的是一个独立的布局环境&#xff0c;BFC 内部的元素布局与外部互不影响。 触发 BFC 的方式有很多&#xff0c;常见的有&#xff1a; 设置浮动overflow 设置为 auto、scr…

uniapp 使用 z-paging组件

使用 z-paging 导入插件 获取插件进行导入 自定义上拉加载样式和下拉加载样式 页面结构 例子 搭建页面 <template><view class"content"><z-paging ref"paging" v-model"dataList" query"queryList"><templ…

笔记-电感充放电过程状态记录

描述&#xff1a;电感充放电过程状态记录 为加深对电感充放电的理解&#xff0c;特做一次记录。 目录 一、准备工作二、电感状态记录1、电感刚开始充电瞬间2、电感充电期间3、电感充电完毕4、电感开始放电瞬间5、电感放电完毕6、电感充放电完整记录 一、准备工作 1、在线平台…

C语言知识复习及拓展

复习内容&#xff1a; 指针、数组、关键字、内存布局、堆和栈的区别、队列、链表。 关键字 1、数据类型关键字 A基本数据类型&#xff08;5个&#xff09; void&#xff1a; 是用来修饰函数的参数或返回值的&#xff0c;代表函数没有参数或没有返回值。 char&#xff1a;用…

飞书被破了,文档可复制可下载

使用过飞书的用户都知道&#xff0c;许多文档、表格被设置权限&#xff0c;只能阅读&#xff0c;不能复制&#xff0c;更别说下载&#xff0c;不方便资料保存。 一、破解 今天无意中发现一个软件&#xff0c;居然可以复制、下载飞书文档&#xff0c;直接看效果&#xff0c;CTR…

开源大语言模型作为 LangChain 智能体

概要 开源大型语言模型 (LLMs) 现已达到一种性能水平&#xff0c;使它们适合作为推动智能体工作流的推理引擎: Mixtral 甚至在我们的基准测试中 超过了 GPT-3.5&#xff0c;并且通过微调&#xff0c;其性能可以轻易的得到进一步增强。 引言 针对 因果语言建模 训练的大型语言模…

Canal + Kafka 同步 MySQL 数据到 Redis

解决缓存和数据库一致性问题 一般来说&#xff0c;缓存中的数据没什么问题&#xff0c;但是数据库更新后&#xff0c;就容易出现缓存&#xff08;Redis&#xff09;和数据库&#xff08;MySQL&#xff09;间的数据一致性问题。由于写和读是并发的&#xff0c;没法保证顺序&…