组件内外部按钮添加点击事件@click="downloadFile"即可,下边代码copy可!
不过最重要的是理解,csdn随时在线,欢迎骚扰!!!
// 点击保存下载图片
downloadFile() {
let aLink = document.createElement('a');
let blob = this.base64ToBlob();
let evt = document.createEvent('HTMLEvents');
evt.initEvent('click', true, true);
aLink.download = "积分趋势效果统计图"; //下载图片的名称
aLink.href = URL.createObjectURL(blob);
aLink.click();
},
exportImg() { //echart返回一个 base64 的 URL
let myChart = this.$echarts.init(
document.getElementById("echarts的Id")
);
return myChart.getDataURL({
type: 'png',
pixelRatio: 1,
backgroundColor: '#fff'
})
},
base64ToBlob() { //将base64转换blob
let img = this.exportImg();
let parts = img.split(';base64,');
let contentType = parts[0].split(':')[1];
let raw = window.atob(parts[1]);
let rawLength = raw.length;
let uInt8Array = new Uint8Array(rawLength);
for (let i = 0; i < rawLength; ++i) {
uInt8Array[i] = raw.charCodeAt(i);
}
return new Blob([uInt8Array], {
type: contentType
});
},
&最后不要忘了关注点赞噢👍&