如何设置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>
相关推荐
陟上青云15 小时前
一篇文章带你搞懂原型和原型链
前端
我的写法有点潮15 小时前
推荐几个国外比较流行的UI库(上)
前端·javascript·css
鹏多多15 小时前
jsx/tsx使用cssModule和typescript-plugin-css-modules
前端·vue.js·react.js
Cherry的跨界思维15 小时前
【AI测试全栈:Vue核心】22、从零到一:Vue3+ECharts构建企业级AI测试可视化仪表盘项目实战
vue.js·人工智能·echarts·vue3·ai全栈·测试全栈·ai测试全栈
ssshooter15 小时前
复古话题:Vue2 的空格间距切换到 Vite 后消失了
前端·vue.js·面试
IamZJT_16 小时前
拒绝做 AI 的“饲养员” ❌:前端程序员在 AI 时代的生存与进化指南 🚀
前端·ai编程
MM_MS16 小时前
Halcon控制语句
java·大数据·前端·数据库·人工智能·算法·视觉检测
程序员Agions16 小时前
程序员武学修炼手册(二):进阶篇——小有所成,从能跑就行到知其所以然
前端·程序员
Van_Moonlight16 小时前
RN for OpenHarmony 实战 TodoList 项目:任务完成进度条
javascript·开源·harmonyos
小画家~16 小时前
第四十六: channel 高级使用
java·前端·数据库