首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

Echarts图表宽度变成100px,让图表宽度随着父元素自动适应,Vue实时监听宽度变化,这可能是史上最好的解决方案!

我们通过浏览器打断点可以看清楚看到Echart在计算图表宽度这部分的逻辑 $("#chart").css( 'width', $("#chart").width() ); ,("#chart")指的是当前绘制图表的...div,获取当前元素的宽度后把固定宽度赋值给图表;    但是为什么我们宽度按设置了100%后,变成100px呢?...如上图右侧突出的样式; ++解决思路:   由于元素display: none无法获取到相应的宽度,当元素变化时我们可以手动的记录父元素的宽度,或者侦听display属性,然后使用官方文档中的resize...()方法 终极解决方案 其实解决方案最重要的是侦听元素的变化同时更多的节省性能的开销,这里推荐大家一个用来侦听元素变化的开源插件:element-resize-detector 该插件针对元素的优化的跨浏览器调整大小侦听器...mainChart).resize() // 当元素尺寸发生改变是会触发此事件,刷新图表 }); } }  通过以上简单的两步,你就可以看到成果,Vue会实时监听元素宽度变化

7.3K40
领券