如何设置echart图表在vue页面屏幕比例缩放自适应问题

问题:页面的echart图表在浏览器缩放屏幕比例时无法随着屏幕的比例自动改变大小

解决方式:

可以通过监听窗口的 resize 事件,并在事件回调函数中重新调整图表的大小。

javascript 复制代码
<template>
  <div ref="chartContainer" style="width: 100%; height: 400px;"></div>
</template>

<script>
import * as echarts from 'echarts';

export default {
  name: 'MyComponent',
  data() {
    return {
      chart: null,
    };
  },
  mounted() {
    //初始化图表
    this.initChart();
    //监听窗口的 resize 事件,并在事件回调函数中重新调整图表的大小。
    window.addEventListener('resize', this.resizeChart);
  },
  beforeDestroy() {
    //销毁
    window.removeEventListener('resize', this.resizeChart);
  },
  methods: {
    initChart() {
      this.chart = echarts.init(this.$refs.chartContainer);
      // 设置图表配置项和数据...
    },
    resizeChart() {
        //判断图例是否存在
      if (this.chart) {
        //图例存在调用图表的重置
        this.chart.resize();
      }
    },
  },
};
</script>
相关推荐
海石4 小时前
微信小程序开发01:XR-FRAME的快速上手
前端·增强现实·trae
叶梅树6 小时前
DocsJS npmjs 自动化发布复盘(Trusted Publisher)
前端·npm
喵叔哟6 小时前
9. 【Blazor全栈开发实战指南】--Blazor调用JavaScript
开发语言·javascript·udp
我命由我123457 小时前
Element Plus - Form 的 resetField 方法观察记录
开发语言·前端·javascript·vue.js·html·html5·js
清空mega7 小时前
《Vue3 项目结构详解:components、views、assets、router、stores 到底该怎么理解?》
前端·javascript·vue.js
雨雨雨雨雨别下啦8 小时前
Vue——小白也能学!Day6
前端·javascript·vue.js
XPoet8 小时前
AI 编程工程化:Hook——AI 每次操作前后的自动检查站
前端·后端·ai编程
難釋懷8 小时前
RedisTemplate配置读写分离
前端·bootstrap·html
冰暮流星9 小时前
javascript如何实现删除数组里面的重复元素
开发语言·前端·javascript
网络点点滴10 小时前
透传属性$attrs
前端·javascript·vue.js