vue 使用echarts 显示隐藏问题

本文探讨了在Vue项目中使用ECharts图表时,如何解决数据加载前后图表显示与隐藏的问题。通过对比v-if与v-show的使用场景,发现v-show更适合处理图表的动态显示与隐藏。同时,文章还分享了利用window.onresize事件解决图表尺寸自适应问题的方法,以及在路由切换时避免上一页的onresize事件干扰的解决方案。

在vue项目中引入echarts图表时,由于会有没数据的情况,所以想在没数据的时候隐藏echarts,但是遇到一个问题,
1.使用v-if时,显示没问题,隐藏后在显示,会显示空页面,可能因为被dom被删除的因素,所以改用v-show,就可以了
2.使用v-show隐藏显示后,echarts的宽度会变成100px,因为隐藏后在显示,会找不到之前设置的宽高,所以选择使用window.onresize自适应高度

let myChart = echarts.init(document.getElementById('id'))
window.onresize = function () {
  	myChart.resize()
}

3.当vue页面路由跳转到下一个页面时,上一个页面的onresize方法会继续执行,所以就需要销毁

//注销window.onresize事件
destroyed(){
  window.onresize = null;
}
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值