vue-org-tree 实现导出组织架构图

基本思路:vue-org-tree 是一个用于展示组织架构图的 Vue 组件。要实现组织架构图的导出,可以使用 html2canvas 库来将组织架构图转换为图片,然后利用 FileSaver.js 库来保存生成的图片。

步骤如下:
①安装依赖:npm install html2canvas file-saver
②js实现逻辑(详见示例代码)

示例代码:

<template>
  <div>
    <org-tree :data="orgData" />
    <button @click="exportOrgChart">导出组织架构图</button>
  </div>
</template>
 
<script>
import OrgTree from 'vue-org-tree'
import html2canvas from 'html2canvas'
import { saveAs } from 'file-saver'
 
export default {
  components: {
    OrgTree
  },
  data() {
    return {
      orgData: {
        // 组织架构数据
      }
    }
  },
  methods: {
    exportOrgChart() {
      const element = document.querySelector('.org-tree'); // 获取组织架构图的容器元素
      html2canvas(element).then(canvas => {
        // 创建一个图片元素
        let img = new Image();
        img.src = canvas.toDataURL('image/png');
 
        // 创建并触发下载
        img.onload = () => {
          let w = img.width;
          let h = img.height;
          let canvas2 = document.createElement('canvas');
          let ctx = canvas2.getContext('2d');
          canvas2.width = w;
          canvas2.height = h;
          ctx.drawImage(img, 0, 0, w, h);
          saveAs(canvas2.toDataURL('image/png'), '组织架构图.png');
        };
      });
    }
  }
}
</script>
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值