最近用echarts遇到2个问题
问题1.两个页面都有图表,打开第一个图表正常,打开第二个图表不显示,切换回第一个图片,发现第二个图表显示在第一个页面
页面1
页面2
页面3
解决办法是图表挂载的dom的id设置成不同值即可
const dom = document.getElementById(‘mainAsset’)
const dom = document.getElementById(‘mainAsset123’)
问题2.页面做好后,随便修改个数据重新加载页面,图表丢失,需要再次刷新才出来
完成页面修改数据图表丢失
网上找了不少文章,有说去掉dom属性的
dom.removeAttribute(‘echarts_instance’)
有说用this.$nextTick()
试了试都不好用,只有用setTimeout(() => {
this.initChart();
}, 1000);好用。
另外,用settimeout 同时也能解决第一个问题,即不需要修改成不同的domid,毕竟CV来的也不容易