vue中使用element ui的彈窗與echarts之間的問(wèn)題詳解
今天項(xiàng)目中有個(gè)需求,就是在頁(yè)面中點(diǎn)擊一個(gè)圖標(biāo),彈出一個(gè)抽屜式的彈窗(彈窗是element UI的抽屜),彈窗里邊是echarts呈現(xiàn)的數(shù)據(jù),當(dāng)我直接用echarts的時(shí)候,報(bào)錯(cuò)dom沒(méi)有獲取到;
這就陷入疑惑,平時(shí)都是這樣獲取的,怎么今天就不行了呢,搜索了很多答案之后才知道,在剛進(jìn)入頁(yè)面的時(shí)候抽屜是關(guān)閉的,那echarts不進(jìn)行獲取dom,當(dāng)點(diǎn)擊抽屜出來(lái)的時(shí)候,有個(gè)opened事件,在這個(gè)事件里邊進(jìn)行echarts的初始化,執(zhí)行數(shù)據(jù);
<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: '總資產(chǎn)占比分析',
x: 'left'
},
tooltip: {
trigger: 'item',
formatter: '{a} <br/> : {c} (7ui227c%)'
},
legend: {
orient: 'vertical',
right: '10%',
top: '35%',
data: ['A', 'B', 'C', 'D']
},
series: [
{
name: '訪(fǎng)問(wèn)來(lái)源',
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沒(méi)有渲染之前,數(shù)據(jù)先加載,主要是用了element ui彈窗的open方法,具體的為啥用這個(gè)方法,還需要研究下
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Vue實(shí)現(xiàn)可移動(dòng)水平時(shí)間軸
這篇文章主要為大家詳細(xì)介紹了Vue實(shí)現(xiàn)可移動(dòng)水平時(shí)間軸,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06
vue中用js如何實(shí)現(xiàn)循環(huán)可編輯表格
這篇文章主要介紹了vue中用js如何實(shí)現(xiàn)循環(huán)可編輯表格,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-09-09
select的change方法傳遞多個(gè)參數(shù)的方法詳解
element-ui中的select,checkbox等組件的change方法的回調(diào)函數(shù)只有當(dāng)前選擇的val,如果想再傳入自定義參數(shù)怎么辦,本文給大家分享select的change方法如何傳遞多個(gè)參數(shù),感興趣的朋友一起看看吧2024-02-02
Vue3.3?+?TS4構(gòu)建實(shí)現(xiàn)ElementPlus功能的組件庫(kù)示例
Vue.js?是目前最盛行的前端框架之一,而?TypeScript?則是一種靜態(tài)類(lèi)型言語(yǔ),它能夠讓開(kāi)發(fā)人員在編寫(xiě)代碼時(shí)愈加平安和高效,本文將引見(jiàn)如何運(yùn)用?Vue.js?3.3?和?TypeScript?4?構(gòu)建一個(gè)自主打造媲美?ElementPlus?的組件庫(kù)2023-10-10
最全vue的vue-amap使用高德地圖插件畫(huà)多邊形范圍的示例代碼
這篇文章主要介紹了最全vue的vue-amap使用高德地圖插件畫(huà)多邊形范圍,本文通過(guò)實(shí)例代碼給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-07-07

