echarts一个div二次渲染数据出现无法渲染问题
//1.方法一
//在echarts.init(document.getElementById("id"))前增加代码document.getElementById("id").removeAttribute("_echarts_instance_");
//2.方法二
if (this.chart.getOption()) {
this.chart.dispose() //释放图表
this.chart = echarts.init(document.getElementById(id));
}
//完整echarts调用示例
var myChart = new om1e1Echarts('om1e1Echarts');
myChart.init(xData, yData)
function om1e1Echarts(id){
document.getElementById(id).removeAttribute("_echarts_instance_"); //方法一
this.chart = echarts.init(document.getElementById(id));
this.init = function (xData, yData) {
var option = {}
this.chart.clear();
if (this.chart.getOption()) { //方法二
this.chart.dispose()
this.chart = echarts.init(document.getElementById(id));
}
this.chart.setOption(option,true);
}
}
方法一和方法二使用一个就好,推荐方法二使用
setOption第二个参数
1.是否不跟之前设置的 option 进行合并。默认为 false。即表示合并。
2.如果为 true,表示所有组件都会被删除,然后根据新 option 创建所有新组件。