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 相关文章推荐
jquery 插件开发方法小结
Oct 23 Javascript
JScript分割字符串示例代码
Sep 04 Javascript
jqueyr判断checkbox组的选中(示例代码)
Nov 08 Javascript
jQuery判断指定id的对象是否存在的方法
May 22 Javascript
jQuery实现动态添加和删除一个div
Aug 12 Javascript
浅析jQuery事件之on()方法绑定多个选择器,多个事件
Apr 27 Javascript
Javascript中浏览器窗口的基本操作总结
Aug 18 Javascript
JS实现的简单四则运算计算器功能示例
Sep 27 Javascript
Next.js项目实战踩坑指南(笔记)
Nov 29 Javascript
vue数据初始化initState的实例详解
Apr 11 Javascript
JS实现滑动插件
Jan 15 Javascript
基于vue.js仿淘宝收货地址并设置默认地址的案例分析
Aug 20 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
压力如何影响浓缩咖啡品质
2021/03/03 咖啡文化
使用PHP socke 向指定页面提交数据
2008/07/23 PHP
Wordpress php 分页代码
2009/10/21 PHP
探讨fckeditor在Php中的配置详解
2013/06/08 PHP
PHP生成随机字符串(3种方法)
2015/09/25 PHP
php代码检查代理ip的有效性
2016/08/19 PHP
php foreach如何跳出两层循环(详解)
2016/11/05 PHP
利用PHP计算有多少小于当前数字的数字方法示例
2020/08/26 PHP
JQueryEasyUI Layout布局框架的使用
2013/04/08 Javascript
js传参数受特殊字符影响错误的解决方法
2013/10/21 Javascript
判断javascript的数据类型(示例代码)
2013/12/11 Javascript
JavaScript获取网页表单action属性的方法
2015/04/02 Javascript
jquery trigger函数执行两次的解决方法
2016/02/29 Javascript
javascript使用 concat 方法对数组进行合并的方法
2016/09/08 Javascript
JS实现重新加载当前页面
2016/11/29 Javascript
原生javascript实现的全屏滚动功能示例
2017/09/19 Javascript
vue单文件组件lint error自动fix与styleLint报错自动fix详解
2019/01/08 Javascript
JS数组reduce()方法原理及使用技巧解析
2020/07/14 Javascript
跟老齐学Python之使用Python查询更新数据库
2014/11/25 Python
完美解决TensorFlow和Keras大数据量内存溢出的问题
2020/07/03 Python
selenium+python自动化78-autoit参数化与批量上传功能的实现
2021/03/04 Python
HTML5单页面手势滑屏切换原理
2016/03/21 HTML / CSS
介绍一下你对SOA的认识
2016/04/24 面试题
英语专业大学生求职简历的自我评价
2013/10/18 职场文书
七年级数学教学反思
2014/01/22 职场文书
《散步》教学反思
2014/03/02 职场文书
大四优秀党员个人民主评议
2014/09/19 职场文书
副检察长四风问题对照检查材料思想汇报
2014/10/07 职场文书
优秀共产党员推荐材料
2014/12/18 职场文书
4S店销售内勤岗位职责
2015/04/13 职场文书
签字仪式主持词
2015/07/03 职场文书
2016年“12.4”法制宣传日活动总结
2016/04/01 职场文书
Mysql官方性能测试工具mysqlslap的使用简介
2021/05/21 MySQL
如何有效防止sql注入的方法
2021/05/25 SQL Server
PostgreSQL基于pgrouting的路径规划处理方法
2022/04/18 PostgreSQL
Nginx安装配置详解
2022/06/25 Servers