上图:
结构采用栅格布局的方式,左边图表设置了宽度自适应 autoFit:true。页面首次进入的时候canvas的宽度超出的了父元素的宽度。如果改变 浏览器的大小,触发了window.resize的时候才会触发autoFit:true 这个属性,才会自适应屏幕的宽度,图表大小才会正常。
vue版本解决方法:在mounted周期函数中,初始化图表之前加入下面代码,将初始化图表的方法放在setTimeout里面
mounted() {
const init = document.createEvent('Event')
init.initEvent('resize', true, true)
window.dispatchEvent(init)
setTimeout(()=>{
this.chart();
},10)
},
这是图表是正常的。