vue3中使用echarts 出现 There is a chart instance already initialized on the dom.

问题:vue3中使用echarts 出现 There is a chart instance already initialized on the dom.
解决:初始化之前先判断该echarts实例是否存在,若存在,先销毁

<div ref="main" style="width: 500px; height: 350px;">雷达图占位</div>  
import * as echarts from 'echarts'

setup(){
    
    
   const main = ref() // 使用ref创建虚拟DOM引用,使用时用main.value
   onMounted(()=>{
    
    
            init()
        })

        // 全局声明echarts dom对象
        var myChart
        const init = ()=>{
    
    
            // 初始化之前先判断该实例是否存在,若存在,先销毁
            if (myChart != null && myChart != "" && myChart != undefined) {
    
    
                myChart.dispose();//销毁
            }
            // 基于准备好的dom,初始化echarts实例
            myChart = echarts.init(main.value);

            var option
            option = {
    
    
                ....
            }
            option && myChart.setOption(option);
   }
   return{
    
    
            init,
            main
   }
}

猜你喜欢

转载自blog.csdn.net/qq_36687211/article/details/128725708