一 官方网站
http://html2canvas.hertzen.com/
二 安装依赖引入
npm install html2canvas
import html2canvas from 'html2canvas';
三 简单封装html2canvas
import html2canvas from 'html2canvas';
const exp = {}
//refVal => this.$refs.refContent, imgName => 'test'
exp.toImage = function(refVal, imgName) {
html2canvas(refVal, {
backgroundColor: '#ffffff'
}).then(canvas => {
let imgData = canvas.toDataURL("image/jpeg");
exp.fileDownload(imgData, imgName);
})
}
exp.fileDownload = function(imgData, imgName) {
let aLink = document.createElement("a");
aLink.style.display = "none";
aLink.href = imgData;
aLink.download = `${imgName}.png`
// 触发点击-然后移除
document.body.appendChild(aLink)
aLink.click();
document.body.removeChild(aLink)
}
export default exp
四 具体使用
//main.js中引入html2canvas
Vue.prototype.$html2canvas = html2canvas
//ref自定义名称
<div class="contentBox" ref="refContent" >
<router-view />
</div>
//页面中调用,路由在哪个页面调用这个方法就可以转换哪个页面为图片, test为图片名称
this.$html2canvas.toImage(this.$refs.refContent, 'test')
1232

被折叠的 条评论
为什么被折叠?



