vue3 html2canvas Cannot read properties of null (reading 'appendChild')解决问题
时间: 2023-12-16 14:27:45 浏览: 190
vue 使用 html2canvas 截屏并下载图片至本地(重点兼容ie浏览器)
根据提供的引用内容,这个问题是由于在使用@antv/g2进行canvas绘图时,当快速切换页面时,由于canvas绘图使用的是数据为空数组,所以会报错。解决这个问题的方法是在进行渲染canvas之前,需要判断canvas绘图使用的数据是否为空数组。具体的解决方法如下:
```javascript
watch: {
dt: {
handler(val) {
// 只有在dt有数据的时候才会渲染图表,否则会报错:Cannot read properties of null (reading 'appendChild')
if (val.length) {
// 开始绘图渲染
this.init()
}
},
deep: true,
immediate: true,
},
},
```
以上代码中,我们使用了Vue3的watch属性来监听数据的变化,当数据发生变化时,我们会检查数据是否为空数组,如果不为空,则开始绘图渲染。这样就可以避免报错了。
阅读全文