echarts实现宽高自适应,vue中解决window.onresize失效

ECharts踩坑 -->图表大小根据浏览器视窗变化自动响应 ECharts踩坑 -->图表大小根据浏览器视窗变化自动响应 文章目录ECharts踩坑 -->图表大小根据浏览器视窗变化自动响应前言一、遇到的问题二、代码展示三、问题分析四、解决办法五、拓展一下[addEventListener](https://www.runoob.com/jsref/met-element-addeventlistener.html)总结 前言 接上篇:ECharts图表指定图表大小错误 提示:以下是本篇文章正文内容 一、遇到的问题 在多标签内使用多个EChart 阅读详情

echarts实现宽高自适应

<template>
	<div id="main" style="width:100%;height:300px;"></div>
</template>
<script>
export default {
data() {
        return {
        	myChart: '',
        	isinit: false, // 是否已初始化过
        	screenWidth: document.body.clientWidth,
            screenHeight: document.body.clientHeight,
        }
 },
 methods: {
	changeEcharts(){
		if(!this.isinit){
          var chartDom = document.getElementById('main');
             this.myChart = this.$echarts.init(chartDom);
             var option;
         }
        option = {
		  xAxis: {
		    type: 'category',
		    data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
		  },
		  yAxis: {
		    type: 'value'
		  },
		  series: [
		    {
		      data: [120, 200, 150, 80, 70, 110, 130],
		      type: 'bar'
		    }
		  ]
		};
		
		option && this.myChart.setOption(option);
}
},
 watch: {
 		// 监听窗口宽度变化时触发
        screenWidth() {
        	this.isinit = true
        	// resize()重新绘制
            this.myChart.resize()
        },
        // 监听窗口高度变化时触发
        screenHeight(){
            this.isinit = true
            this.myChart.resize()
        }
    },
 mounted() {
	var that = this;
        window.onresize = () => {
            return (() => {
                window.screenWidth = document.body.clientWidth
                that.screenWidth = window.screenWidth
                window.screenHeight = document.body.clientHeight
                that.screenHeight = window.screenHeight
            })()
        }
}
}
</script>

解决window.onresize失效

解决方法:将window.onresize换成window.addEventListener(‘resize’, () => {})

window.addEventListener('resize', () => {
            window.screenWidth = document.body.clientWidth
            that.screenWidth = window.screenWidth
            window.screenHeight = document.body.clientHeight
            that.screenHeight = window.screenHeight
        })
多个 Echarts 图表下的窗口调整事件 window.onresize,只有一个图表自适应的问题 在开发 Web 应用程序时,使用 Echarts 这样的数据可视化库可以很方便地创建漂亮的图表。然而,当我们在同一个页面上显示多个 Echarts 图表,并希望它们能够在窗口大小改变时自适应调整,可能会遇到一个问题:只有其中一个图表能够正确地响应窗口调整事件,其他图表则不会自适应调整大小。本文将探讨这个问题的原因,并提供解决方案。 阅读详情

相关推荐

从FSI到三层堆叠:一文搞懂车载CIS图像传感器技术演进与选型避坑

本文深入解析车载CIS图像传感器从FSI到三层堆叠的技术演进,揭示不同结构在低光性能、HDR表现和温度稳定性上的关键差异。通过实测数据对比,指导智能驾驶系统选型策略,帮助开发者规避成本与性能的常见陷阱,提升车载摄像头在复杂环境下的成像质量。

weixin_30689307的博客 101

vue3echarts结合tab时,echarts无法获取父组件的高度100%,而转换成80px显示

将tabs的activeName传递给各个组件,在组件内部watch props的activeName,当activeName改变时,执行echarts的resize。

2301_78998235的博客 652

ADS124S08配置避坑指南:从SPI时序到寄存器设置,手把手教你调通24位ADC

本文详细解析了ADS124S08 24位ADC的SPI时序配置、寄存器设置及外围电路设计中的关键细节,帮助工程师避开常见陷阱。从SPI通信模式选择到DRDY引脚读取优化,再到基准电压启动时间调整,提供了实战验证的解决方案,确保高精度数据采集的稳定性。

weixin_29192365的博客 286

Echarts自适应:当窗口大小发生变化时,重新渲染图表

①. 首先介绍一下window.onresize,这个方法可以监听窗口变化。 将window.onresize写在mounted中,在窗口变化时就会执行它的内容。如: mounted() { window.onresize = () => { console.log("窗口发生变化时会打印该条"); }; }, ②. 接下来,只要在window.onresize中写入重新绘制echarts的逻辑就OK了 echarts自带resize这个API,即.

vvv3171071的博客 1万+

从零到一:DETR模型在自定义数据集上的实战部署与调优

本文详细介绍了DETR模型在自定义数据集上的实战部署与调优过程,包括环境准备、数据转换、模型配置、训练技巧及问题排查。通过具体代码示例和实用建议,帮助开发者高效完成从零到一的DETR模型部署,特别适合目标检测领域的实践应用。

weixin_42524100的博客 463

Jetson AGX ORIN硬件初始化和环境部署

orin预安装了ubuntu20.04,只需开机,像重装系统一样设置用户信息即可,可以参考官网的教程[https://developer.nvidia.com/embedded/learn/get-started-jetson-agx-orin-devkit],官网提供了两种方式:一种是orin + 显示器,orin有提供DP接口,你需要准备一台显示器,最好也是有DP口的,因为我用DP转HDMI的连的,分辨率会受影响。确认安装的路径,一般直接回车安装在默认的 /home/你的名字/anaconda3。

TracyGC的博客 3836

使用echarts需要图表自适应,window.onresize方法失效解决办法

echarts图表window.onresize方法失效的解决方法

PolarisWay的博客 2067

音频——DAC 性能测试

codec DAC 性能测试方法

tyustli 2235

vue中使用window.onresize无效

在父、子组件中同时使用了window.onresize,子组件中window.onresize无效。 子组件代码如下:出现问题为console的lineHeigt为2,但实际在vue中lineHeigt仍为0 data(){ return { lineHeigt: 0 } }, mounted() { let _this = this; window.onresize = function() { _this.getLineHeight(); } }, methods: { getLin

Zhang's Blog 5966

TIBCO Jaspersoft Studio报表开发 使用教程-进阶版

本文学习内容容器定制二级目录三级目录 容器定制 二级目录 三级目录

吉哲的博客 7521

【ARM CoreLink 系列 4.2 -- NI-700 Function units 详细介绍】

CoreLink NI-700的ASNI(AXI系统网络接口)完成者单元负责接收并处理来自AXI请求者设备的请求。这些单元将事务打包成根据NI-700通用传输(GT)协议的Flits,并将GT响应Flits解包成AXI响应。AXI与GT协议之间的请求、数据和响应事务的转换:确保AXI事务可以被NI-700网络正确处理,并将GT协议的响应正确转换回AXI响应。入站事务的突发拆分。

CodingCos的博客 1323

一,echarts 自适应 父子组件 二,解决There is a chart instance already initialized on the dom.

一,echarts 自适应 父子组件 二,解决There is a chart instance already initialized on the dom.

dyx001007的博客 1790

【ComfyUI】SD1.5 + ControlNet 边缘检测融合动漫转真人

本文介绍了一个基于ComfyUI的动漫转真人图像生成工作流,通过多模型协同实现高质量的二次元图像转换。该工作流集成了Canny线稿预处理、ControlNet结构控制、VAE编码解码和人脸精细化处理等核心环节,采用majicmixRealistic_v7作为主模型,配合yolov8、SAM等辅助模型。整个流程包含11个标准化步骤,从图像输入、预处理到最终超分输出,通过ControlNet引导和CLIP语义控制确保生成图像的写实感和结构准确性,特别针对人脸区域进行专业优化,最终可输出高分辨率写实人像。

Mr数据杨 1126

解决Vue在同一页面引入多个echarts组件无法自适应,resize失效的问题,lodash实现节流的基本使用

解决Vue在同一页面引入多个echarts组件无法自适应,resize失效的问题,lodash实现节流的基本使用

weixin_43323097的博客 1349

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

Vue+Echarts 大屏开发遇到的问题

Vue 中使用Echarts 其实很简单,粘就完了 echarts 和axios 使用 问题一:点击图标全屏展示,并且切换图标 一:下载引入screenfull 插件 npm install screenfull --save //在调用全屏功能的组件中引入 import screenfull from 'screenfull' 布局如下 定义窗口事件 二:echarts 图表大小随窗口变动而自适应变动(无需刷新浏览器调整) 使用一个window.onresize 时,可以使用,引入

YangShuaiPlus的博客 894

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

px2rem转换失效,解决px2rem和echarts冲突

失效原因是没执行重新计算根目录的font-size,window.onresize追加新的事件

weixin_41950674的博客 1512

antd option宽度自适应_Vue实战092:Echarts图表宽度自适应

双11狂欢节,半价促销![比心][比心][比心]所有专栏5折哦,需要的朋友可以下手啦!前面我们通过文章【Vue实战090:Vue使用ECharts图表详解 】分享了如何利用ECharts创建图表,但是在生成图表之后可能我们可能会遇到这样的问题。页面渲染后显示正常,但是当我们调整页面大小时会发现图表部分被遮挡(或者说溢出)没有随窗口大小改变而自动调整到最佳视觉效果。这里我们可以看到显示的区域只有65...

weixin_39884738的博客 659

折叠屏切屏导致样式异常解决办法

(1)使用v-if刷新出问题的UI。仅作为参数,不一定适用所有项目!

weixin_46381556的博客 1017

【前端】项目中遇到的问题汇总(长期更新)

【长期更新】前端项目中常遇到的问题汇总(vue3+elementPlus+node.js+axios+webpack)

sinat_39394862的博客 1238

vue使用echarts根据页面大小 echarts窗口自适应

vue使用echarts根据页面大小 echarts窗口自适应

蓝胖子的博客 2268

echarts 图形随屏幕大小改变(resize)

echarts 的resize 用来改变图表尺寸,当容器大小发生变化时使用window.onresize = myChart.resize可使图标随着屏幕大小改变。 //初始化echarts var myChart = echarts.init(document.getElementById('main')); //此处省略echarts的配置项 ....... //加载echarts配置项 myChart.setOption(option); //图形宽度随屏幕宽度改变而改变 wi..

甜心的专栏 1万+

在el-tabs中echarts图表宽高设置style=“width: 100%; height: 100%“不起效变成100px的问题

最粗暴的解决办法是给div一个固定的高度,也就是上面三种解决方案的核心,比如你遇到问题时候实时给div一个高宽恒定值,然后看看画出的图尺寸变没有,再去考虑是样式冲突或者组件渲染的问题导致这种情况。

鹤渺的星球 3351

echarts高度设置height:100%不起作用

echarts height:100%不起作用

小武的博客 5344

window.onresize无效

使用window.onresize时无效

sha_1234的博客 1448

echarts图表自适应resize用法

单个图表 window.onresize = myChart.resize; 可以完成自适应,就是把window的onresize事件赋值为echart的resize事件。 2. 多个图表(也可用于单个图表) window.onresize = function () { myChart.resize(); myChart1.resize(); ...

qq_43155489的博客 1万+

解决Echarts图标resize函数报错

解决Echarts图标resize函数报错问题 需求:当页面大小变化时,图表进行重新绘制,响应页面尺寸。 修改之前: // 使用刚指定的配置项和数据显示图表。 this.pieChart.setOption(option); window.onresize = () => { // 监听页面变化事件 this.pieChart.resize(); // 调用echart的重绘方法 }; 效果:可以实现效果,但是控制台会报错,_this.pieC

qq_37622750的博客 3141
上一篇: mysql统计一个数据库中所有表的数量总和
下一篇: mysql获取18位和15位身份证号中的出生日期、年龄
if时光重来
博客等级 码龄8年 248粉丝 217原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值