最简单解决方案
切换v-show到v-if
不那么简单的解决方案
找到父元素中宽度固定不被v-show影响的元素,获取其宽度
let fool = document.getElementById('fool');
let body=document.getElementsByClassName(someDom)[0]
fool.style.width =body.clientWidth + 'px';
let echart = echarts.init(fool);
echart.setOption(option);
// 监听父元素宽度变化,更新charts实例宽度
const resizeObserver = new ResizeObserver(entries => {
console.log('resizeObserver')
//回调
fool.style.width = body.clientWidth + 'px';
echart.resize();
});
resizeObserver.observe(body);
试了但是没用的解决方案
window.addEventListener('resize', () =>
this.chartsDom ? this.chartsDom.resize() : ''
);