gpt4 book ai didi

javascript - 如何在 Vue JS 中使用 html2canvas?

转载 作者:行者123 更新时间:2023-11-28 10:42:43 24 4
gpt4 key购买 nike

我面临的第一个障碍是 document.getElementById 没有简写形式。在 Vue 中,我实现了 function like this one 。我面临的第二个障碍是恕我直言 html2canvas docs在处理没有 <!DOCTYPE html> 的情况时,这些功能非常有限。和一个 <body> .

这是我的 .vue 中的标记摘要文件:

<template>
<div>
<md-layout>
<div id="capture" class='m1 '>
// more markup...
</div>
</md-layout>
</div>
</template>

这就是我尝试实现捕获功能的方式:

//Vue equivalent for document.getElementById
showCaptureRef() {
console.log(this.$refs.capture);
},
// Screen capture function
downloadVisualReport () {
let vc = this
alert("Descargando reporte visual")
html2canvas(vc.showCaptureRef).then(canvas => {
vc.document.body.appendChild(canvas)
}).catch((error) => {
console.log("Erorr descargando reporte visual")
alert("Error descargando el reporte visual")
});
},

最佳答案

我发现了,我有两个错误:

首先,我有 id='capture' 而不是 ref="capture"

第二,这一行vc.document.body.appendChild(canvas),需要改为document.body.appendChild(canvas)

这是将 Canvas 下载为图像的函数的最终代码:

downloadVisualReport () {
let vc = this
let filename = 'Reporte de ' + vc.campaign.name + '.png';
html2canvas(vc.showCaptureRef()).then(canvas => {
vc.saveAs(canvas.toDataURL(), filename);
}).catch((error) => {
alert("Error descargando el reporte visual")
});
},

关于javascript - 如何在 Vue JS 中使用 html2canvas?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49390314/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com