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

解決Vue3?echarts?v-show無法重新渲染的問題

 更新時(shí)間:2023年09月11日 14:12:14   作者:woflyoycm  
這篇文章主要介紹了Vue3?echarts?v-show無法重新渲染的問題,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下

Vue3 echarts v-show無法重新渲染的問題

部分html代碼如下

<el-empty class="chart-small" v-if="!dataList || !dataList.length" description="沒有數(shù)據(jù)"/>
<div class="chart-small" ref="dataBarDom" v-show="dataList && dataList.length">

部分js代碼如下

這里需要引入nextTick方法

import {ref, onMounted, reactive, nextTick} from "vue";
onMounted(async ()=>{
    getData()
})
// echarts相關(guān)
const dataBarDom = ref()//關(guān)聯(lián)圖標(biāo)div的ref
let dataBar = null
// 需要顯示的數(shù)據(jù)(有數(shù)據(jù)顯示,沒有數(shù)據(jù)不顯示)
const dataList=ref([])
const getData=async ()=>{
    // 從后臺獲取需要渲染的數(shù)據(jù)
    dataList.value=await getDataFromDb()
    if(dataList.value.length){
        showChart.value=true
        nextTick(() => {
            dataBar= echarts.init(dataBarDom.value)
            //...以下省略渲染echart的代碼
        })
    }else{
        showChart.value=false
    }
}

nextTick方法之后(Dom重新渲染)再去調(diào)用echarts圖標(biāo)的生成方法即可

vue3線上環(huán)境組件重新渲染echarts圖表無法正常顯示問題

一、echarts在vue3的使用問題

環(huán)境:

Vue3 版本

echarts 5.3.2版本

  "core-js": "^3.8.3",
    "echarts": "^5.3.2",
    "element-plus": "^2.0.4",
    "vue": "^3.2.13",
    "vue-router": "^4.0.13",
    "vue-ueditor-wrap": "^3.0.8"

問題描述:

線上環(huán)境vue組件第一次渲染時(shí)echarts圖表可以正常渲染展示,但是第二次進(jìn)入組件時(shí)(組件重新渲染)echarts無法正常渲染展示。

升級echarts5后發(fā)現(xiàn)的問題。

排查:

通過檢查dom發(fā)現(xiàn)雖然組件第二次重新渲染時(shí),第一次組件渲染生成的echarts實(shí)列依然存在(未銷毀)導(dǎo)致第二次組件渲染但是echarts無法成功渲染展示

解決方案:

在組件每次渲染時(shí)都執(zhí)行一次echants實(shí)列銷毀操作。

目前還沒找到更好的解決方法,至少目前可行。

二、解決方案1

      // 基于準(zhǔn)備好的dom,初始化echarts實(shí)例
      echarts.init(document.getElementById("monthCollect")).dispose();
      var myChart = echarts.init(document.getElementById("monthCollect"));
      myChart.setOption()

三、解決方案2

// 取得Dom
var main=document.getDocumentByID()
//先獲取dom實(shí)例,執(zhí)行銷毀
let existInstance = echarts.getInstanceByDom(main);
if (existInstance) {
    if (true) {
        echarts.dispose(chartStudent);
    }
}
// 初始化&配置設(shè)定
let mychart = echarts.init(main);
mychar.setOption({....});

到此這篇關(guān)于Vue3 echarts v-show無法重新渲染的問題的文章就介紹到這了,更多相關(guān)Vue3 echarts v-show無法重新渲染內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • uniapp?webview和H5通信的3種方式代碼示例

    uniapp?webview和H5通信的3種方式代碼示例

    最近在研究uni-app跨端開發(fā)APP和H5的通訊和交互,比如H5調(diào)用APP的方法,APP往H5里面?zhèn)鲄?H5往app外面?zhèn)鲄?這篇文章主要給大家介紹了關(guān)于uniapp?webview和H5通信的3種方式,需要的朋友可以參考下
    2024-04-04
  • vue + echarts實(shí)現(xiàn)中國省份地圖點(diǎn)擊聯(lián)動

    vue + echarts實(shí)現(xiàn)中國省份地圖點(diǎn)擊聯(lián)動

    這篇文章主要介紹了vue + echarts實(shí)現(xiàn)中國地圖省份點(diǎn)擊聯(lián)動,需要的朋友可以參考下
    2022-04-04
  • Vue組件封裝方案實(shí)現(xiàn)淺析

    Vue組件封裝方案實(shí)現(xiàn)淺析

    這篇文章主要介紹了Vue組件封裝方案實(shí)現(xiàn),我們將從分析組件封裝的優(yōu)勢開始,然后依次介紹 vue.js 的基本概念,以及如何創(chuàng)建、封裝和使用自定義組件
    2023-03-03
  • vue實(shí)現(xiàn)四級導(dǎo)航及驗(yàn)證碼的方法實(shí)例

    vue實(shí)現(xiàn)四級導(dǎo)航及驗(yàn)證碼的方法實(shí)例

    我們在做項(xiàng)目經(jīng)常會遇到多級導(dǎo)航這個(gè)需求,所以下面這篇文章主要給大家介紹了關(guān)于vue實(shí)現(xiàn)四級導(dǎo)航及驗(yàn)證碼的相關(guān)資料,文章通過示例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-07-07
  • vue.js仿hover效果的實(shí)現(xiàn)方法示例

    vue.js仿hover效果的實(shí)現(xiàn)方法示例

    這篇文章主要介紹了vue.js仿hover效果的實(shí)現(xiàn)方法,結(jié)合實(shí)例形式分析了vue.js事件響應(yīng)及頁面元素屬性動態(tài)操作相關(guān)實(shí)現(xiàn)技巧,需要的朋友可以參考下
    2019-01-01
  • 詳解vue 在移動端體驗(yàn)上的優(yōu)化解決方案

    詳解vue 在移動端體驗(yàn)上的優(yōu)化解決方案

    這篇文章主要介紹了vue 在移動端體驗(yàn)上的優(yōu)化解決方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-05-05
  • Vue中的Computed實(shí)現(xiàn)原理分析

    Vue中的Computed實(shí)現(xiàn)原理分析

    這篇文章主要介紹了Vue中的Computed實(shí)現(xiàn)原理,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-08-08
  • Vue.js組件tab實(shí)現(xiàn)選項(xiàng)卡切換

    Vue.js組件tab實(shí)現(xiàn)選項(xiàng)卡切換

    這篇文章主要為大家詳細(xì)介紹了Vue.js組件tab實(shí)現(xiàn)選項(xiàng)卡切換的相關(guān)資料,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • Vue-CLI項(xiàng)目中路由傳參的方式詳解

    Vue-CLI項(xiàng)目中路由傳參的方式詳解

    這篇文章主要介紹了Vue-CLI項(xiàng)目中路由傳參的方式詳解,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-09-09
  • VueJs打包之后遇到的坑及解決

    VueJs打包之后遇到的坑及解決

    這篇文章主要介紹了VueJs打包之后遇到的坑及解決方案,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-05-05

最新評論