在vue中使用echarts根据父级div大小自动适应大小
时间: 2024-02-26 07:25:14 浏览: 25
vue中echarts图表大小适应窗口大小且不需要刷新案例
可以使用ECharts提供的`resize`方法来实现自适应。
首先,在Vue组件中,需要引入ECharts:
```javascript
import echarts from 'echarts';
```
然后在`mounted`生命周期函数中初始化ECharts实例,并监听窗口大小变化事件:
```javascript
mounted() {
this.chart = echarts.init(this.$refs.chartContainer);
window.addEventListener('resize', this.handleResize);
},
```
其中`this.$refs.chartContainer`是一个ref,指向渲染图表的div容器。
接下来编写`handleResize`方法,用于实现自适应:
```javascript
methods: {
handleResize() {
this.chart.resize();
},
},
```
在窗口大小变化时,调用`chart.resize()`方法,即可让图表自适应父级div大小。
最后,在组件销毁时,需要移除窗口大小变化事件的监听:
```javascript
beforeDestroy() {
window.removeEventListener('resize', this.handleResize);
},
```
阅读全文