vue中使用element ui的弹窗与echarts之间的问题详解


Posted in Javascript onOctober 25, 2019

今天项目中有个需求,就是在页面中点击一个图标,弹出一个抽屉式的弹窗(弹窗是element UI的抽屉),弹窗里边是echarts呈现的数据,当我直接用echarts的时候,报错dom没有获取到;

这就陷入疑惑,平时都是这样获取的,怎么今天就不行了呢,搜索了很多答案之后才知道,在刚进入页面的时候抽屉是关闭的,那echarts不进行获取dom,当点击抽屉出来的时候,有个opened事件,在这个事件里边进行echarts的初始化,执行数据;

<el-drawer
   title="分析图表"
   :modal="false"
   :close-on-click-modal="false"
   :modal-append-to-body="false"
   size="600px"
   :visible.sync="dataVisible"
   @opened="opens"
  >
  <div ref="main" style="width: 100%;height:100%;"></div>
</el-drawer>

export default {
 data() {
  return {
   isColor: true,
   option1: {
    title: {
     text: '总资产占比分析',
     x: 'left'
    },
    tooltip: {
     trigger: 'item',
     formatter: '{a} <br/>{b} : {c} ({d}%)'
    },
    legend: {
     orient: 'vertical',
     right: '10%',
     top: '35%',
     data: ['A', 'B', 'C', 'D']
    },
    series: [
     {
      name: '访问来源',
      type: 'pie',
      radius: '70%',
      center: ['25%', '60%'],
      data: [
       { value: 335, name: 'A' },
       { value: 310, name: 'B' },
       { value: 234, name: 'C' },
       { value: 135, name: 'D' }
      ],
      label: {
       normal: {
        show: false,
        position: 'center'
       }
      }
     }
    ]
   },
}}
}
method:{
  opens(){
     this.$nextTick(() => {
      this.pie1()
   })
  },
  pie1(){
    this.$echarts.init(this.$refs.main).setOption(this.option1)
  }
}

这样防止dom没有渲染之前,数据先加载,主要是用了element ui弹窗的open方法,具体的为啥用这个方法,还需要研究下

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

Javascript 相关文章推荐
使用javascript获取页面名称
Dec 23 Javascript
javascript伸缩型菜单实现代码
Nov 16 Javascript
JavaScript测试工具之Karma-Jasmine的安装和使用详解
Dec 03 Javascript
又一枚精彩的弹幕效果jQuery实现
Jul 25 Javascript
微信小程序 特效菜单抽屉效果实例代码
Jan 11 Javascript
Spring Boot+AngularJS+BootStrap实现进度条示例代码
Mar 02 Javascript
jQuery用noConflict代替$的实现方法
Apr 12 jQuery
详解angularjs 学习之 scope作用域
Jan 15 Javascript
vscode下vue项目中eslint的使用方法
Jan 13 Javascript
自定义Vue组件打包、发布到npm及使用教程
May 22 Javascript
微信用户访问小程序的登录过程详解
Sep 20 Javascript
vue改变循环遍历后的数据实例
Nov 07 Javascript
浅谈layui 表单元素的选中问题
Oct 25 #Javascript
layUI的验证码功能及校验实例
Oct 25 #Javascript
layui点击按钮页面会自动刷新的解决方案
Oct 25 #Javascript
详解node登录接口之密码错误限制次数(含代码)
Oct 25 #Javascript
Vue 用Vant实现时间选择器的示例代码
Oct 25 #Javascript
vue登录以及权限验证相关的实现
Oct 25 #Javascript
vue-next/runtime-core 源码阅读指南详解
Oct 25 #Javascript
You might like
WINDOWS 2000下使用ISAPI方式安装PHP
2006/09/05 PHP
smarty 缓存控制前的页面静态化原理
2013/03/15 PHP
PHP无限分类(树形类)
2013/09/28 PHP
smarty高级特性之过滤器的使用方法
2015/12/25 PHP
用js实现的模拟jquery的animate自定义动画(2.5K)
2010/07/20 Javascript
JavaScript高级程序设计(第3版)学习笔记10 再访js对象
2012/10/11 Javascript
解决IE6的PNG透明JS插件使用介绍
2013/04/17 Javascript
浅谈JavaScript中的String对象常用方法
2015/02/25 Javascript
js的各种排序算法实现(总结)
2016/07/23 Javascript
jQuery中ScrollTo用法示例
2016/09/04 Javascript
微信小程序 网络请求(GET请求)详解
2016/11/16 Javascript
详解@angular/cli 改变默认启动端口两种方式
2018/11/29 Javascript
vuex 解决报错this.$store.commit is not a function的方法
2018/12/17 Javascript
微信小程序提交form操作示例
2018/12/30 Javascript
解决Vue.js应用回退或刷新界面时提示用户保存修改问题
2019/11/24 Javascript
vue实现浏览器全屏展示功能
2019/11/27 Javascript
在服务器端实现无间断部署Python应用的教程
2015/04/16 Python
python爬虫获取多页天涯帖子
2018/02/23 Python
Python高斯消除矩阵
2019/01/02 Python
Python分析彩票记录并预测中奖号码过程详解
2019/07/09 Python
python中使用paramiko模块并实现远程连接服务器执行上传下载功能
2020/02/29 Python
在jupyter notebook中调用.ipynb文件方式
2020/04/14 Python
在pycharm中创建django项目的示例代码
2020/05/28 Python
python 实现ping测试延迟的两种方法
2020/12/10 Python
html5视频自动横过来自适应页面且点击播放功能的实现
2020/06/03 HTML / CSS
亿企通软件测试面试题
2012/04/10 面试题
生物制药毕业生自荐信
2013/10/16 职场文书
幼儿园秋游感想
2014/03/12 职场文书
厨房领班竞聘演讲稿
2014/04/23 职场文书
法律专业求职信
2014/05/24 职场文书
迁户口计划生育证明
2014/10/19 职场文书
家长给老师的感谢信
2015/01/20 职场文书
高校自主招生自荐信2015
2015/03/04 职场文书
宾馆前台接待岗位职责
2015/04/02 职场文书
甲午大海战观后感
2015/06/02 职场文书
Pygame Draw绘图函数的具体使用
2021/11/17 Python