原因很简单,在tab页中,图表的父容器div是隐藏的(display:none),图表在执行js初始化的时候找不到这个元素,所以自动将“100%”转成了“100”,最后计算出来的图表就成了100px
解决办法:
找一个在tab页的切换操作中不会隐藏的父容器,把它的宽度的具体值取出后在初始化图表之前直接赋给图表
KaTeX parse error: Expected 'EOF', got '#' at position 3: ("#̲chartMain").css…("#TabContent").width());//获取父容器的宽度具体数值直接赋值给图表以达到宽度100%的效果
var Chart = echarts.init(document.getElementById(‘chartMain’));
// 指定图表的配置项和数据
option = { …配置项和数据 };
// 使用刚指定的配置项和数据显示图表。
Chart.setOption(option);
例:实例echarts之前设置高度
window.JQ("#construction").css(‘width’,window.JQ("#left").width())
this.myChart1 = window.Echarts.init(document.getElementById(‘construction’));
//当浏览器缩放的时候 - 改变charts
resizeCharts () {
this.myChart.resize();
this.myChart1.resize();
this.myChart2.resize();
}
销毁echarts实例
this.myChart1.dispose()