vue项目 echarts中出现“There is a chart instance already initialized on the dom.”的警告
·
在项目开发中创建echart图表时遇到“There is a chart instance already initialized on the dom.”的警告,意思即为dom上已经初始化了一个图表实例,并且如果你图表中定义了点击方法,多次覆盖之后,点击方法会触发多次。更新页面重复加载这个图表实例时就会出现这类警告。
以下写法可以避免这类警告。
1、例如你的echart图表代码写在一个单独的echarts.js文件中,建议在export defalut之外 定义 var myChart;
在方法最外层定义全局变量

2、然后在插件使用方法中:即在echarts图表函数中写 :
if (myChart != null && myChart != "" && myChart != undefined) {
myChart.dispose(); //销毁
}
// 基于已经创建好的dom,初始化echarts实例
myChart = echarts.init(document.getElementById("def1"));
var option;

3、总结
echarts图表方法的最开始写上判断,然后初始化echarts实例;
最重要的就是全局定义和方法开头的判断。然后再myChart.dispose(); //销毁重复加载的图表实例。
魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。
更多推荐


所有评论(0)