欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Vue解決echart在element的tab切換時(shí)顯示不正確問(wèn)題

 更新時(shí)間:2020年08月03日 08:54:24   作者:淚雨  
這篇文章主要介紹了Vue解決echart在element的tab切換時(shí)顯示不正確問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

最近在項(xiàng)目中遇到了這種情況,需要在tab控件上渲染多個(gè)echart圖標(biāo),然后切換查看時(shí),發(fā)現(xiàn)圖表的寬度不正確

原因:在頁(yè)面進(jìn)行加載時(shí),隱藏的圖表找不到對(duì)應(yīng)的div大小,所以默認(rèn)給了一個(gè)大小。所以要做的就是在頁(yè)面加載時(shí),就對(duì)圖表進(jìn)行初始化。

網(wǎng)上的解決方案大多都是監(jiān)聽tab的切換事件,然后再根據(jù)切換的頁(yè)面重新渲染echart組件,比較麻煩。

如下是個(gè)人的解決方法:

原理:利用v-if屬性,當(dāng)切換至對(duì)應(yīng)的tab時(shí),設(shè)置其v-if的值為true即可,同時(shí)設(shè)置默認(rèn)顯示的tab

舉例如下:

<el-tabs type="card" v-model="tabItem">
 <el-tab-pane name="heart">
  <span slot="label"><icon name="heart" scale="2"></icon>心率</span>
  <baseline ref="heart" :chartData="{}" v-if="'heart' === tabItem"></baseline>
 </el-tab-pane>
 <el-tab-pane name="breath">
  <span slot="label"><icon name="breath" scale="2"></icon>呼吸</span>
  <baseline ref="breath" :chartData="{}" v-if="'breath' === tabItem"></baseline>
 </el-tab-pane>
 <el-tab-pane label="體動(dòng)" name="move">
  <span slot="label"><icon name="move" scale="2"></icon>體動(dòng)</span>
  <baseline ref="move" :chartData="{}" v-if="'move' === tabItem"></baseline>
 </el-tab-pane>
</el-tabs>


這里默認(rèn)tab為心率tab,當(dāng)切換時(shí),同一時(shí)刻只有一個(gè)v-if為true,當(dāng)將其設(shè)置為true時(shí),Vue會(huì)重新在頁(yè)面渲染組件,即完成了組件渲染的步驟。

補(bǔ)充知識(shí):有關(guān)el-tab-pane中echarts圖遇到的問(wèn)題(element中的Tabs 標(biāo)簽頁(yè))

在項(xiàng)目中,遇到了一個(gè)奇怪問(wèn)題:

element中的el-tabs組件,在el-tab-pane引入echarts圖標(biāo)時(shí),刷新時(shí)沒(méi)有圖標(biāo)出現(xiàn),如果將瀏覽器窗口縮小一點(diǎn),就可以展示.

解決方案:

在echarts中加入v-if來(lái)解決 (另外,有時(shí)我們?cè)陧?xiàng)目中用v-show也會(huì)出現(xiàn)上述類似情況,將v-show改成v-if試試就可以解決)

<template>
 <el-tabs v-model="activeName" @tab-click="handleClick">
  <el-tab-pane label="用戶管理" name="first">用戶管理</el-tab-pane>
  <el-tab-pane label="配置管理" name="second">配置管理</el-tab-pane>
  <el-tab-pane label="角色管理" name="third">角色管理</el-tab-pane>
  <el-tab-pane label="定時(shí)任務(wù)補(bǔ)償" name="fourth">
    <div class="echartsBox" 
      v-loading="loadingDetail"
      element-loading-spinner="el-icon-loading"
      >
      <echart-line 
      v-if="'fourth' === activeName"  //在這里加上這句話就可以解決上面的問(wèn)題
      class="CurePicture"
      :category="chartData.category"
      :data="chartData.data"
      :unit="chartData.unit"
      ></echart-line>
     </div>
  </el-tab-pane>
 </el-tabs>
</template>
<script>
import echartLine from "@/components/echarts/line"
 export default {
  components: {
  echartLine
  }, 
  data() {
   return {
    activeName: 'second'
   };
  },
  methods: {
   handleClick(tab, event) {
    console.log(tab, event);
   }
  }
 };
</script>

拿走,不用謝!!!

以上這篇Vue解決echart在element的tab切換時(shí)顯示不正確問(wèn)題就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • vue自定義組件如何通過(guò)v-model指令控制組件的隱藏、顯示

    vue自定義組件如何通過(guò)v-model指令控制組件的隱藏、顯示

    這篇文章主要介紹了vue自定義組件如何通過(guò)v-model指令控制組件的隱藏、顯示,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-05-05
  • Vue生命周期區(qū)別詳解

    Vue生命周期區(qū)別詳解

    這篇文章主要介紹了Vue生命周期區(qū)別詳解,本篇文章通過(guò)簡(jiǎn)要的案例,講解了該項(xiàng)技術(shù)的了解與使用,以下就是詳細(xì)內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • axios封裝與傳參示例詳解

    axios封裝與傳參示例詳解

    這篇文章主要給大家介紹了關(guān)于axios封裝與傳參的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2020-10-10
  • 用Vue實(shí)現(xiàn)頁(yè)面訪問(wèn)攔截的方法詳解

    用Vue實(shí)現(xiàn)頁(yè)面訪問(wèn)攔截的方法詳解

    大家在做前端項(xiàng)目的時(shí)候,大部分頁(yè)面, 游客都可以直接訪問(wèn) , 如遇到 需要登錄才能進(jìn)行的操作,頁(yè)面將提示并跳轉(zhuǎn)到登錄界面,那么如何才能實(shí)現(xiàn)頁(yè)面攔截并跳轉(zhuǎn)到對(duì)應(yīng)的登錄界面呢,本文小編就來(lái)給大家介紹一下Vue實(shí)現(xiàn)頁(yè)面訪問(wèn)攔截的方法,需要的朋友可以參考下
    2023-08-08
  • Vue項(xiàng)目打包部署到GitHub Pages的實(shí)現(xiàn)步驟

    Vue項(xiàng)目打包部署到GitHub Pages的實(shí)現(xiàn)步驟

    本文主要介紹了Vue項(xiàng)目打包部署到GitHub Pages的實(shí)現(xiàn)步驟,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2022-04-04
  • vue的注意規(guī)范之v-if 與 v-for 一起使用教程

    vue的注意規(guī)范之v-if 與 v-for 一起使用教程

    這篇文章主要介紹了vue的注意規(guī)范之v-if 與 v-for 一起使用方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • 一文教會(huì)你如何運(yùn)行vue項(xiàng)目

    一文教會(huì)你如何運(yùn)行vue項(xiàng)目

    最近因?yàn)楣卷?xiàng)目問(wèn)題,開始學(xué)習(xí)vue,這篇文章主要給大家介紹了關(guān)于如何運(yùn)行vue項(xiàng)目的相關(guān)資料,文中還介紹了如何運(yùn)行別人的項(xiàng)目,需要的朋友可以參考下
    2022-06-06
  • vue項(xiàng)目input標(biāo)簽checkbox,change和click綁定事件的區(qū)別說(shuō)明

    vue項(xiàng)目input標(biāo)簽checkbox,change和click綁定事件的區(qū)別說(shuō)明

    這篇文章主要介紹了vue項(xiàng)目input標(biāo)簽checkbox,change和click綁定事件的區(qū)別說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-08-08
  • Vue?axios和vue-axios的關(guān)系及使用區(qū)別

    Vue?axios和vue-axios的關(guān)系及使用區(qū)別

    axios是基于promise的HTTP庫(kù),可以使用在瀏覽器和node.js中,它不是vue的第三方插件,vue-axios是axios集成到Vue.js的小包裝器,可以像插件一樣安裝使用:Vue.use(VueAxios, axios),本文給大家介紹Vue?axios和vue-axios關(guān)系,感興趣的朋友一起看看吧
    2022-08-08
  • vue+G6圖形化實(shí)現(xiàn)功能示例

    vue+G6圖形化實(shí)現(xiàn)功能示例

    這篇文章主要為大家介紹了vue+G6圖形化實(shí)現(xiàn)功能示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-07-07

最新評(píng)論