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(默认值):主轴为水平方向,起点在左端. ...
随机推荐
- mongo import excle
mongoimport --host 192.*******.** --db ** --collection ** --type csv --headerline --file /*****.cs ...
- Android开发之程序猿必需要懂得Android的重要设计理念
前几天去參加了带着自己的作品去參加服务外包大赛,由于签位抽到的比較靠后就等待了蛮久,就跟坐在前面的一起參赛的选手開始讨论Android的开发经验.各自给对方展示了自己的作品,小伙伴就建议我看 ...
- stdio - 标准输入输出库函数
SYNOPSIS 总览 #include <stdio.h> FILE *stdin; FILE *stdout; FILE *stderr; DESCRIPTION 描述 标注 I/O ...
- htop资源管理器
htop是linux资源管理器,安装后界面如下图: 当我们用安装yum -y htop时,会报错,这是因为需要安装扩展源 yum -y epel 扩展源 安装完扩展源之后,就可以安装了
- Spring下载maven
http://maven.springframework.org/release/org/springframework/spring/
- TCP协议中的三次握手和四次挥手(图解)(转)
转自:http://blog.csdn.net/whuslei/article/details/6667471 建立TCP需要三次握手才能建立,而断开连接则需要四次握手.整个过程如下图所示: 先来看看 ...
- web.xml中配置——解决post乱码
<!-- 解决post乱码 --> <filter> <filter-name>CharacterEncodingFilter</filter-name> ...
- react 数据发生变化,页面改变的原理
数据发生变化,页面改变的原理: 比较虚拟的dom 不怎么损耗性能,真实的dom比较会损耗性能 1.state 数据 2.jsx 模板 3.生成虚拟的dom 3.数据和模板结合,生成虚拟的dom 4.用 ...
- springBoot框架在idea中创建流程 同时存在一个项目中
1.新建普通maven工程 2.在父级pom中按需修改 3.删除父级src目录 4.创建公共模块common,里面只有service接口和实体类 5.构建微服务模块,provider 6.引用Zook ...
- 深入理解Magento - 第六章 - 高级Magento模型
我们讲过Magento有两种模型,简单模型和EAV(Entity Attribute Value)模型.上一章我们讲过所有的Magento模型都是继承自Mage_Core_Model_Abstract ...