如何设置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 小时前
基于 AST 与 Proxy沙箱 的局部代码热验证
前端·设计模式·架构
发现一只大呆瓜6 小时前
SSO单点登录:从同域到跨域实战
前端·javascript·面试
发现一只大呆瓜6 小时前
告别登录中断:前端双 Token无感刷新
前端·javascript·面试
Cg136269159747 小时前
JS-对象-Dom案例
开发语言·前端·javascript
无限大67 小时前
《AI观,观AI》:善用AI赋能|让AI成为你深耕核心、推进重心的“最强助手”
前端·后端
烛阴8 小时前
Claude Code Skill 从入门到自定义完整教程(Windows 版)
前端·ai编程·claude
lxh01138 小时前
数据流的中位数
开发语言·前端·javascript
神仙别闹8 小时前
基于NodeJS+Vue+MySQL实现一个在线编程笔试平台
前端·vue.js·mysql
zadyd9 小时前
Workflow or ReAct ?
前端·react.js·前端框架
北寻北爱11 小时前
vue2和vue3使用less和scss
前端·less·scss