前端直接导出图片功能 利用html2canvas导出图片

25 篇文章 0 订阅
21 篇文章 1 订阅
背景:最近在项目中有这样一个场景,当用户点击“导出”时,需要把当前页面的数据分析导出成一张图,并且直接下载到本地。(当前页面包含有echarts图)

1、安装依赖包 html2canvas

npm i -S html2canvas

2、在需要使用导出的页面导入 html2canvas

import html2canvas from "html2canvas";
<div class="export-btn"  @click.stop.once ="exportClick">
        <i class="el-icon-loading" v-if="iconShow"></i>
        <a ref="down" >{{ iconShow ? '导出中' : '导出' }}</a>
</div>
<div ref="contentRef">
// 这里面就是具体写需要导出的内容了
</div>

methods: {
	 exportClick() {
      this.iconShow = true
      let downName = this.villageList[this.activeVillage].name
      html2canvas(this.$refs.contentRef,{scale: 5, logging:false,  useCORS:true}).then((canvas) => {
        const oImg = new Image();
        oImg.src = canvas.toDataURL(); // 导出图片
        this.$refs.down.href = canvas.toDataURL();
        this.$refs.down.download = downName; // 导出图片的名字
        this.$refs.down.click();
        this.iconShow = false
      });
    },
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值