美文网首页
组织结构图 OrgChart

组织结构图 OrgChart

作者: 撑船的摆渡人 | 来源:发表于2019-02-28 17:48 被阅读0次

先上效果图


OrgChart.png
OrgChart.png

以Vue为例

第一步、安装项目中

npm install vue-organization-chart -S

第二步,引入组件

<template>
  <div>
    <organization-chart :datasource="ds"></organization-chart>
  </div>
</template>

<script>
  import Vue from 'vue'
  import OrganizationChart from 'vue-organization-chart'
  import 'vue-organization-chart/dist/orgchart.css'

  export default {
    components: {
      OrganizationChart
    },
    data () {
      return {
        ds: {
          'id': '1',
          'name': 'Lao Lao',
          'title': 'general manager',
          'children': [
            { 'id': '2', 'name': 'Bo Miao', 'title': 'department manager' },
            { 'id': '3', 'name': 'Su Miao', 'title': 'department manager',
              'children': [
                { 'id': '4', 'name': 'Tie Hua', 'title': 'senior engineer' },
                { 'id': '5', 'name': 'Hei Hei', 'title': 'senior engineer',
                  'children': [
                    { 'id': '6', 'name': 'Pang Pang', 'title': 'engineer' },
                    { 'id': '7', 'name': 'Xiang Xiang', 'title': 'UE engineer' }
                  ]
                 }
               ]
             },
            { 'id': '8', 'name': 'Hong Miao', 'title': 'department manager' },
            { 'id': '9', 'name': 'Chun Miao', 'title': 'department manager' }
          ]
        }
      }
    }
  }
</script>

好的完成
为了更好地拓展业务,还可以在卡槽中添加自己想要的功能

<template slot-scope="{ nodeData }">
  <!-- feel free to customize the internal structure of node -->
</template>

数据格式需要按照上面的返回,否则可能需要修改组件重新封装一下,或者自己按照上面的格式适配一下。

后台返回数据结构.png
后台返回的数据格式大概为上面格式,一个对象包含animal数组或者person数组,animal数组可能包括animal和person,person是最后一级,animal可能有无数级。需要把animal和person统一合并成children数组。
/**
 *  格式化组织机构图数据
 */
dealDate(org){
  let children;
  if(org.fundInfoSonList && org.dealInfoSonList){
    children = org.fundInfoSonList.concat(org.dealInfoSonList)
  }else{
    children = org.fundInfoSonList || org.dealInfoSonList;
  }
  let nodeTree = {
    id: org.id,
    fundNameCn: org.fundNameCn,
    title: org.title,
    flagType: org.flagType,
    children: children
  }
  this.arrFn(nodeTree.children);
  this.datasource = nodeTree;
},
arrFn(org){
  org.forEach(org=>{
    if(Array.isArray(org.fundInfoSonList) && org.fundInfoSonList.length > 0){
      if(org.dealInfoSonList && org.dealInfoSonList.length > 0){
        org.children = org.fundInfoSonList.concat(org.dealInfoSonList);
        delete org.fundInfoSonList;
        delete org.dealInfoSonList;
      }else{
        org.children = org.fundInfoSonList;
        delete org.fundInfoSonList;
      }
    }else{
      if(org.dealInfoSonList && org.dealInfoSonList.length > 0){
        org.children = org.dealInfoSonList;
        delete org.dealInfoSonList;
      }
    }
    if(!!org.children){
      this.arrFn(org.children)
    }
  })
}

OrgChart 分别支持

Vue.js Version

jQuery Version

Native JavaScript(ES6) Version

Web Components Version

相关文章

  • 组织结构图 OrgChart

    先上效果图 以Vue为例 第一步、安装项目中 第二步,引入组件 好的完成为了更好地拓展业务,还可以在卡槽中添加自己...

  • orgChart.js

    今天使用orgChart没有找到合适的,所以今天来写篇使用文档。 OrgChart.js是什么? 基于ES6的组织...

  • 架构组织结构图

    公司架构组织结构图 组织结构图是一款跨平台的组织结构图绘制软件,能让企业管理者快速绘制高质量的组织结构图,实现企业...

  • 形形色色的办公室政治成因

    每一家公司都会有一张组织结构图,但是这张组织结构图并不一定是真实的组织结构图。 有职场经验的人就会知道,这个组织内...

  • 回归常识五部曲1:找出囚笼

    每一家公司都会有一张组织结构图,但是这张组织结构图并不一定是真实的组织结构图。 有职场经验的人就会知道,这个组织内...

  • 企业组织结构图怎么画?结构图的绘制方法分享

    企业组织结构图怎么画?作为一名办公人员,学会绘制企业组织结构图是很有必要的一件事,组织结构图可以让我们很快的了解行...

  • 冷门丨用SmartArt绘制组织结构图,远比你想象的更好用!-布

    在PPT中绘制组织结构图,当然还是使用SmartArt更为快捷。千万不要低估了SmartArt的组织结构图绘制能力...

  • 利用迅捷画图绘制组织结构图怎样操作

    什么是组织结构图? 组织结构图是把企业组织分成若干部分,并且标明各部分之间可能存在的各种关系,在组织结构中将每种关...

  • 关于组织架构的梳理

    一、人才盘点清单 1.如何设计组织结构?请梳理出公司/团队的组织结构图。 在设计组织结构图的时候,应该考虑纵向责任...

  • 组织结构图模板分享

    组织结构图 组织结构图是把企业组织分成若干部分,并且标明各部分之间可能存在的各种关系。这里所说的各种关系包括上下级...

网友评论

      本文标题:组织结构图 OrgChart

      本文链接:https://www.haomeiwen.com/subject/nnjkuqtx.html