定制软件开发在项目开发中创建图表时遇到“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(); //销毁重复加载的图表实例。