专栏首页前端开发随笔vue-orgchart做组织架构图

vue-orgchart做组织架构图

Vue-orgchart链接地址

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>ERP树形组织图</title>
    <link rel="stylesheet" href="https://cdn.suoluomei.com/common/js2.0/npm/vue-orgchart/dist/style.min.css">
    <link rel="stylesheet" href="https://cdn.bootcss.com/font-awesome/4.5.0/css/font-awesome.min.css">
</head>
<style>
    #chart-container {
        overflow: inherit !important;
    }

    .orgchart .node .title {
        font-size: 20px;
        padding: 20px;
        box-sizing: border-box;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 5px;
        line-height: 0;
        flex-direction: row-reverse;
        background: lightseagreen;
    }

    .orgchart .node .title .symbol {
        float: none;
        margin-top: 0;
        margin-right: 10px;
    }

    .orgchart .node {
        width: auto;
    }

    .oc-export-btn {
        bottom: 88%;
    }
</style>

<body>
    <div id="vue">
        <vo-basic :data="chartData" :pan="true" :zoom="true" :export-button="true" export-button-name="导出"
            :draggable="true" :toggle-siblings-resp="true" parent-node-symbol="fa-users"></vo-basic>
    </div>
</body>
<script src="http://cdn.suoluomei.com/common/js2.0/vue/v2.5.16/vue.js"></script>
<script src="https://cdn.suoluomei.com/common/js2.0/npm/vue-orgchart/dist/vue-orgchart.min.js"></script>
<script src="https://cdn.suoluomei.com/common/js2.0/html2canvas/1.0/html2canvas.min.js"></script>
<script type="text/javascript">
    new Vue({
        el: '#vue',
        data: {
        },
        created() {
            this.chartData = {
                name: '组织架构图',
                children: [
                    {
                        name: '超能者',
                        children: [
                            {
                                name: '总监',
                                children: [
                                    {
                                        name: '主管',
                                        children: [
                                            { name: '前端客服' },
                                            { name: '推广员' }
                                        ]
                                    },
                                ]
                            },
                        ]
                    },
                    {
                        name: '董事长',
                        children: [
                            {
                                name: '总经办',
                                children: [
                                    { name: '外部访问组' }
                                ]
                            },
                        ]
                    },
                ]
            }
        }
    })
</script>
</html>

如果需要做动态渲染,比如点击某一项显示对应的结构图要重新对组件进行初始化

获取dom节点,重新.innerHTML(<div>...</div>), //要浏览器解析出来的div

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • vue简单实现九宫格抽奖

    wePanda
  • 微信小程序引用we-cropper裁切图片

    文档地址 github下载源码直达链接 复制dist文件夹中的 .min.js 和 .wxml文件到项目中

    wePanda
  • Vant实现预览富文本图片

    wePanda
  • delegates - 委托模式的简单实现

    最近发现一个有意思的模块 - delegates,它由大名鼎鼎的 TJ 所写,可以帮我们方便快捷地使用设计模式当中的委托模式(Delegation Patte...

    IMWeb前端团队
  • [android] 在不同的activity之间传递数据

    添加<TextView/>控件,设置控件内容水平居中,android:gravity=”center_horizontal”

    陶士涵
  • Android开发笔记(四十二)Broadcast的生命周期

    广播(Broadcast)用于Android组件之间的灵活通信,它与Activity和Service的区别在于: 1、Activity和Service都只...

    用户4464237
  • Python入门三部曲(三)

    在函数greet_user()中,变量username是一个形参—-函数完成其工作所需要的一项信息.在代码greet_user(‘kobe’)中,值’kobe’...

    龙哥
  • WordPress记住评论用户信息的js版本,直接操作cookie无视缓存

    这两天一直在折腾博客的评论功能,原因是开启了百度云加速的 html 缓存,导致原有的记住评论者信息的功能失效了,每次刷新文章页面,用户信息都会清空。 于是就折腾...

    张戈
  • day22-day27-面向对象

    少年包青菜
  • Python动态参数/命名空间/函数嵌套

      def func(*args, **kwargs):     pass

    py3study

扫码关注云+社区

领取腾讯云代金券