echarts的图表根据父容器大小的改变而改变(弹窗easy-ui的window窗口)
1.echarts的图表只绘制一次,所以要想大小随着父容器变化就得调方法重新绘制。所以把绘制图表的方法提出来。
<div class="echart">
<div :id="id" style="height: 100%;width: 100%;"></div>
</div>
data(){
return{
chart:""
}
},
methods:{
init(){
let _width=$("#"+this.id).width();
let _height=$("#"+this.id).height();
this.chart=this.$echarts.init(document.getElementById(this.id));
console.log(this.option);
this.chart.resize({ //根据父容器的大小设置大小
width:_width,
height:_height
});
this.chart.setOption(this.option,true);
}
}
2.用window窗口改变大小是调用的方法来调用echarts中的init方法(win和echarts组件是非父子组件)
win组件中:
$("#" + _this.id).window({
title: _this.data.title,
width:_this.data.width,
height:_this.data.height,
top:_this.data.top,
left:_this.data.left,
cls:_this.class,
collapsible:false,
minimizable:false,
maximizable:_this.data.maximizable,
closable:true,
modal: false,
shadow: false,
draggable: true,
resizable:_this.data.resizable,
onBeforeClose: function () { //点击窗口关闭按钮的时候触发
if (this) {
$(this).window('destroy');
}
_this.$store.commit("win/win_close", {win_id: _this.id});
},
onResize:function (){ //窗口大小改变时触发
_this.bus.$emit("echart") //通过echarts调用echarts里的方法
}
});
echarts组件中:
mounted() {
setTimeout(()=>{ //做异步是为了先获取到父容器的宽高之后再进行绘制canvas,设置时长为2000ms是为了保留动画效果
this.init();
},2000);
this.bus.$on("echart",()=>{
this.init();
})
},
echarts的图表根据父容器大小的改变而改变(弹窗easy-ui的window窗口)的更多相关文章
- echarts 调整图表大小的方法
第一次使用Echarts,大小用的不是那么随心应手,通过文档和百度出的结果,发现其实很简单: 内部图表大小是与div容器大小相关的,如果想调整图表大小,调整div就可以了 如果是想调整图表与div间上 ...
- 【Unity】UGUI控件大小适配父容器
需求:需要把UGUI控件的尺寸调整到指定大小,如匹配至设计的分辨率.或者说想制定覆盖全屏的背景图片. 做法:将这个UGUI控件的RectTransform组件里的Anchor Presets设为预设的 ...
- ECharts 图表设置标记的大小 symbolSize 和获取标记的值
ECharts 是百度出品,一个纯 Javascript 的图表库,可以流畅的运行在 PC 和移动设备上,兼容当前绝大部分浏览器(IE8/9/10/11,Chrome,Firefox,Safari等) ...
- 【CSS】div父容器根据子容器大小自适应
Div即父容器不根据内容自动调节高度,我们看下面的代码: <div id="main"> <div id="content"></ ...
- echarts图表自适应,容器宽度设置为百分比,但是图表显示不全,缩到一起
<div id="chartContainer" style="height:100%;width:100%;"></div> cha ...
- eCharts使用图表简单示例
https://blog.csdn.net/hlbt0112/article/details/48862427 1. eCharts官网 http://echarts.baidu.com/index. ...
- ECharts数据图表系统? 5分钟上手!
目录: 前言 简介 方法一:模块化单文件引入(推荐) 方法二:标签式单文件引入 [前言] 最近在捣鼓各种插件各种框架,发现这个ECharts还是比较不错的,文档也挺全的,还是中文的,给大家推荐一下. ...
- 移动端框架篇-控制父容器的滑屏框架-slip.js
设计滑屏框架的办法一般有2种 控制父容器法 控制子容器法 这个算是控制父容器法 通过控制父容器的transform: translateY或margin-top或top的值来上下滑动页面,每次的位移的 ...
- H5弹性盒布局的使用(父容器属性)
为父容器添加display:flex/inline-flex 父容器可以使用的属性有: 1.flex-direction:决定主轴的方向 有四个属性值: row(默认值):主轴为水平方向,起点在左端. ...
随机推荐
- java性能调优03
1.java中的四种引用类型(级别由高到低为:强引用,软引用,弱引用和虚引用) 1.1 强引用:默认创建的变量都是强引用,垃圾回收机制不会将其回收,当内存空 间不足,Java虚拟机宁愿抛出OutOfM ...
- # Python第十节 传参
Python第十节 传参 一. 变量和变量名 首先说明变量名和变量的一点差异 例如: var = [1, 2, 3] `var = "Google" 调用变量var的时候, 既可以 ...
- byte为什么要与0xff
面对带正负号的数,会采用符号扩展,如果原值是正数,则高位补上0:如果原值是负数,高位补1.二进制是计算技术中广泛采用的一种数制.二进制数据是用0和1两个数码来表示的数.当前的计算机系统使用的基本上是二 ...
- 8、服务发现&服务消费者Feign
spring cloud的Netflix中提供了两个组件实现软负载均衡调用,分别是Ribbon和Feign.上一篇和大家一起学习了Ribbon. Ribbon :Spring Cloud Ribbon ...
- RPC协议的介绍
根据网上搜索的一些资料摘抄汇总的,如果有误,欢迎斧正. 早期单机时代,一台电脑上运行多个进程,大家各干各的,老死不相往来.假如A进程需要一个画图的功能,B进程也需要一个画图的功能,程序员就必须为两个进 ...
- C# System.Windows.Forms.Panel
UserControl 定义的界面 输出到panel 实现界面切换
- Mate Translate的特色功能phrasebook 常用语手册介绍
Mate Translate是Mac os系统上一款多国语言即时翻译工具,支持103种语言之间的即时互译,还可以在你的所有设备之间轻松同步.Mate Translate 不但推出了适应各个平台使用的客 ...
- HTML5 worker计数器简单示例
效果图: index.html var w; // 开始 function startWorker() { if (typeof (Worker) !== "undefined") ...
- ES6常用点
原文 http://es6.ruanyifeng.com/#docs 变量--------------------------------------------- 1.let声明.const声 ...
- js设计模式——5.状态模式
js设计模式——5.状态模式 代码演示 /*js设计模式——状态模式*/ // 状态(红灯,黄灯,绿灯) class State { constructor(color) { this.color = ...