分析原因模糊感觉应该是因为页面里存在多个echarts图表或者在最开始这个图表已经加载,后来点击事件控制它再出现,所以导致后面加载的图表会和开始页面加载的图表冲突,不停的刷新图表,获取数据导致内存过载,页面卡死,加载不出来
解决:
if (document.getElementById('qwe')) {
document.getElementById('qwe').removeAttribute("_echarts_instance_");
}
在启动函数中最上面先加入这段代码将之前的这个qwe元素挂载的属性先移除,之后再运行函数。
在我的项目中,还会因为数据源的格式问题而导致解决上面那个问题之后,echarts加载依然会循环几百次的有限次数,所以在数据源获取处给他进行一下格式转换,就会消除这个问题
if (data) {
let newData = this.sortByInt(JSON.parse(JSON.stringify(data)) ,"value")
newData.forEach((item)=>{
val.push(item.value)
naa.push(item.name)
})