亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

解決vue一個頁面中復用同一個echarts組件的問題

 更新時間:2020年07月19日 09:40:38   作者:耿彥豐  
這篇文章主要介紹了解決vue一個頁面中復用同一個echarts組件的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧

因為頁面中要用echarts圖表的地方比較多,所以封裝了組件,方便復用,如圖:

我需要這樣一個餅圖,并且接下來在很多次地方要用到。

直接復制官網(wǎng)的代碼,再改改數(shù)據(jù),需要用的時候直接拿來用。

但是接下來出現(xiàn)了一個問題:如果我在同一個頁面多次使用這個組件,圖表將不能正常顯示。分析了一下, echarts通過id獲取對象

// 基于準備好的dom,初始化echarts實例

var myChart = echarts.init(document.getElementById('main'));

當封裝為組件使用的時候,id固定,同一個頁面多次出現(xiàn)相同id,所以不能正常顯示。

所以想出來以下解決方案:

舉個栗子,如果我需要在一個頁面中使用該組件兩次,

在組件的data中,另外賦一個變量,暫且定為type。在父組件的data中,第一個圖標的數(shù)據(jù)pieData1中添加一個type:1,第二個添加一個type:2

 pieData1:{
 type: 1,
 title: '失敗次數(shù)',
 list:[
  {value:335, name:'502 Bad Gateway'},
  {value:310, name:'404 Not Found'},
  {value:234, name:'無法連接服務器'},
  {value:135, name:'請求超時'},
  {value:1548, name:'Trace LOSS'},
 ],
 pieStyle: {
  width: '400px',
  height: '400px',
  float: 'right'
 }
 },
 
 pieData2:{
 type: 2,
 title: '失敗次數(shù)',
 list:[
  {value:335, name:'502 Bad Gateway'},
  {value:310, name:'404 Not Found'},
  {value:234, name:'無法連接服務器'},
  {value:135, name:'請求超時'},
  {value:1548, name:'Trace LOSS'},
 ],
 pieStyle: {
  width: '400px',
  height: '400px',
  float: 'right'
 }
 }

接下來改需要在同一個vue頁面中用兩次的子組件:

html:

<div id="demo1" :style="pieStyle" v-if="pieData.type==1"></div>

<div id="demo2" :style="pieStyle" v-if="pieData.type==2"></div>

js:

var myPie 
 if(this.pieData.type==1){
 myPie = echarts.init(document.getElementById("demo1"));
 }else if(this.pieData.type==2){
 myPie = echarts.init(document.getElementById("demo2"));
 }

好了,問題解決了,效果圖如下:

如果想到其它方法再補充。

補充知識:vue中,封裝的Echart組件被同一個頁面多次調(diào)用,數(shù)據(jù)被覆蓋問題解決辦法。

大概率是echarts init有問題,是不是用class或id選擇器選擇元素來init了

錯誤版本:

正確版本:

以上這篇解決vue一個頁面中復用同一個echarts組件的問題就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • vue中集成省市區(qū)街四級地址組件的實現(xiàn)過程

    vue中集成省市區(qū)街四級地址組件的實現(xiàn)過程

    我們在開發(fā)中常會遇到選擇地址的需求,有時候只需要選擇省就可以,有時候則需要選擇到市、縣,以至于鄉(xiāng)鎮(zhèn),甚至哪個村都有可能,下面這篇文章主要給大家介紹了關于vue中集成省市區(qū)街四級地址組件的相關資料,需要的朋友可以參考下
    2022-12-12
  • VUE中使用Vue-resource完成交互

    VUE中使用Vue-resource完成交互

    本篇文章主要介紹了VUE中使用Vue-resource完成交互,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-07-07
  • Vue使用自定義指令實現(xiàn)頁面底部加水印

    Vue使用自定義指令實現(xiàn)頁面底部加水印

    本文主要實現(xiàn)給項目的整個背景加上自定義水印,可以改變水印的文案和字體顏色等,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-06-06
  • Vue elementui字體圖標顯示問題解決方案

    Vue elementui字體圖標顯示問題解決方案

    這篇文章主要介紹了Vue elementui字體圖標顯示問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-08-08
  • vue.js多頁面開發(fā)環(huán)境搭建過程

    vue.js多頁面開發(fā)環(huán)境搭建過程

    利用 vue-cli 搭建的項目大都是單頁面應用項目,對于簡單的項目,單頁面就能滿足要求。這篇文章主要介紹了vue.js多頁面開發(fā)環(huán)境搭建 ,需要的朋友可以參考下
    2019-04-04
  • vue雙向錨點實現(xiàn)過程簡易版(scrollIntoView)

    vue雙向錨點實現(xiàn)過程簡易版(scrollIntoView)

    這篇文章主要介紹了vue雙向錨點實現(xiàn)過程簡易版(scrollIntoView),具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2024-07-07
  • 在iview+vue項目中使用自定義icon圖標方式

    在iview+vue項目中使用自定義icon圖標方式

    這篇文章主要介紹了在iview+vue項目中使用自定義icon圖標方式,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2022-04-04
  • 基于Vue中的父子傳值問題解決

    基于Vue中的父子傳值問題解決

    這篇文章主要介紹了基于Vue中的父子傳值問題解決,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-07-07
  • Vue+springboot批量刪除功能實現(xiàn)代碼

    Vue+springboot批量刪除功能實現(xiàn)代碼

    這篇文章主要介紹了Vue+springboot批量刪除功能,本文通過示例代碼給大家介紹的非常詳細,感興趣的朋友跟隨小編一起看看吧
    2024-05-05
  • vue實現(xiàn)學生錄入系統(tǒng)之添加刪除功能

    vue實現(xiàn)學生錄入系統(tǒng)之添加刪除功能

    本文給大家?guī)硪粋€小案例基于vue實現(xiàn)學生錄入系統(tǒng)功能,代碼簡單易懂非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧
    2018-07-07

最新評論