vue中echarts3.0自适应的方法


Posted in Javascript onFebruary 26, 2018

前端时间做一个vue的项目,echart是按需引入的如下:

// 引入 ECharts 主模块
import echarts from 'echarts/lib/echarts'
// 引入折线图
import 'echarts/lib/chart/line'
// 引入提示框和图例组件
import 'echarts/lib/component/tooltip'
import 'echarts/lib/component/legendScroll'

然后发现在缩放浏览器窗口时折线图并不会自适应,费了好一会才解决,记录下来给需要的小伙伴,

第一种:浏览器自适应

通过:

在myChart.setOption后添加

window.onresize = myChart.resize;

如果有多个图形,可以封装成方法: 

mounted(){ 
this.changEcharts(); 
}, 
methods:{ 
changEcharts() { 
window.addEventListener('resize', ()=> { 
this.drawLineDom.resize(); 
this.todayFlowDom.resize(); 
this.hitRateDom.resize();});};},} 
this.drawLineDom = this.$echarts.init(document.getElementById('chart-bandwidth'));

第二种情况,根据div大小的变化进行自适应

因为vue不能实时监测div大小变化的,所以我定义了一个按键,当按键的值变化的时候,进行resize;

import { mapState }from'vuex'; 
computed: mapState({isCollapse:'isCollapse',//这里我是语用的vuex保存的变量,可以不用vuex,我是因为组件之间的通讯}), 
watch: { 
isCollapse() { // 注意一定不要用箭头函数,会获取不到this 
setTimeout(() => { 
this.drawLineDom.resize(); 
this.todayFlowDom.resize(); 
this.hitRateDom.resize(); 
}, 500);},},

其实我用这个是在导航进行伸缩的时候,导致div大小发生了变化,所以这样执行reszie,就能完美的自适应

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript操纵Cookie实现购物车程序
Nov 23 Javascript
DOM基础教程之事件对象
Jan 20 Javascript
JavaScript中的原始值和复杂值
Jan 07 Javascript
js前端解决跨域问题的8种方案(最新最全)
Nov 18 Javascript
JS检测是否可以访问公网服务器功能代码
Jun 19 Javascript
使用Angular CLI生成 Angular 5项目教程详解
Mar 18 Javascript
在vue-cli搭建的项目中增加后台mock接口的方法
Apr 26 Javascript
基于bootstrap页面渲染的问题解决方法
Aug 09 Javascript
在 Vue-CLI 中引入 simple-mock实现简易的 API Mock 接口数据模拟
Nov 28 Javascript
vue favicon设置以及动态修改favicon的方法
Dec 21 Javascript
vue.js引入外部CSS样式和外部JS文件的方法
Jan 06 Javascript
javascript设计模式 ? 抽象工厂模式原理与应用实例分析
Apr 09 Javascript
swiper 解决动态加载数据滑动失效的问题
Feb 26 #Javascript
解决Angular.js中使用Swiper插件不能滑动的问题
Feb 26 #Javascript
Angular5中调用第三方js插件的方法
Feb 26 #Javascript
angular2中使用第三方js库的实例
Feb 26 #Javascript
vue 子组件向父组件传值方法
Feb 26 #Javascript
vue2 前端搜索实现示例
Feb 26 #Javascript
vue使用$emit时,父组件无法监听到子组件的事件实例
Feb 26 #Javascript
You might like
《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组
2010/11/01 PHP
php异常处理方法实例汇总
2015/06/24 PHP
YII2框架中使用yii.js实现的post请求
2017/04/09 PHP
Laravel5.7 数据库操作迁移的实现方法
2019/04/12 PHP
基于Jquery插件开发之图片放大镜效果(仿淘宝)
2011/11/19 Javascript
情人节专属 纯js脚本1k大小的3D玫瑰效果
2012/02/11 Javascript
JavaScript AJAX之惰性载入函数
2014/08/27 Javascript
javascript中String对象的slice()方法分析
2014/12/20 Javascript
js判断一个字符串是否包含一个子串的方法
2015/01/26 Javascript
JS获取表格内指定单元格html内容的方法
2015/03/31 Javascript
jQuery构造函数init参数分析续
2015/05/13 Javascript
在JavaScript中使用NaN值的方法
2015/06/05 Javascript
jquery插件jquery.beforeafter.js实现左右拖拽分隔条对比图片的方法
2015/08/07 Javascript
jQuery链式操作实例分析
2015/11/16 Javascript
详解React-Native全球化多语言切换工具库react-native-i18n
2017/11/03 Javascript
mongoose更新对象的两种方法示例比较
2017/12/19 Javascript
解决vue-router中的query动态传参问题
2018/03/20 Javascript
jQuery ajax仿Google自动提示SearchSuggess功能示例
2019/03/28 jQuery
JS前端面试必备——基本排序算法原理与实现方法详解【插入/选择/归并/冒泡/快速排序】
2020/02/24 Javascript
解决iView Table组件宽度只变大不变小的问题
2020/11/13 Javascript
Python元组知识点总结
2019/02/18 Python
Python partial函数原理及用法解析
2019/12/11 Python
Python中Flask-RESTful编写API接口(小白入门)
2019/12/11 Python
python psutil监控进程实例
2019/12/17 Python
Pycharm和Idea支持的vim插件的方法
2020/02/21 Python
Django 多对多字段的更新和插入数据实例
2020/03/31 Python
亚马逊巴西站:Amazon.com.br
2019/09/22 全球购物
机械专业应届生求职信
2013/09/21 职场文书
学校大课间活动方案
2014/01/30 职场文书
新任教师自我鉴定
2014/02/24 职场文书
C++程序员求职信范文
2014/04/14 职场文书
幼儿园中班下学期评语
2014/04/18 职场文书
小学生中国梦演讲稿
2014/04/23 职场文书
企业金融服务方案
2014/06/03 职场文书
幼儿园教师培训心得体会
2016/01/21 职场文书
调解协议书范本
2016/03/21 职场文书