2020年3月

因为项目需要用到生成海报的功能,所以立马想到了html2canvas的插件。但是很久没用了,有点忘记。
第一时间选择了npm i html2canvas
看着熟悉的安装界面,一切都向美好的方向发展。
但是当我按照文档

import html2canvas from 'html2canvas' 
html2canvas(document.querySelector("#capture")).then(canvas => {
    document.body.appendChild(canvas)
});

项目使用了过后,发现报错了!
Uncaught (in promise) TypeError: Cannot assign to read only property 'className' of object '#<SVGGElement>'
错误原因好像是说这个对象是只读属性,无法克隆。一直也没发现问题在哪!
百度了很多次都没搜到相关问题。
后来我上了官方的github找到了相关issues
https://github.com/niklasvh/html2canvas/issues/1868
浏览了一下,发现问题出现在rc版本之后
以前的1.0.0-alpha.12版本可以用。
果断放弃新版本
npm i html2canvas@1.0.0-alpha.12
安装以后,使用正常了