时间:2021-05-26
今天项目中有个需求,就是在页面中点击一个图标,弹出一个抽屉式的弹窗(弹窗是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方法,具体的为啥用这个方法,还需要研究下
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
前言随着我们vue3.0的出现,我们的ui组件库也有了一些变化,像我们的旧版的element-ui已经不能在vue3.0中使用了,如果要使用element的话需
最近初学vue,试着做一个小项目熟悉语法与思想,其中使用elemen-ui的导航栏做路由跳转切换页面。下面记录一下学习过程element-ui引入vue项目的用
Vue原生实现右键菜单组件,零依赖快速安装npminstallvue-contextmenujs使用测试中使用的是element-ui图标importConte
在Vue项目中使用mock.js开发工具选择:Vscode1.使用命令行创建vue项目(手动选择Babel,Router,Vuex)2.导入element-ui
结合vue+element-ui+vue-quill+editor二次封装成组件1.图片上传分析原因项目中使用vue-quill-editor富文本编辑器,在编