问题: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
   }
}
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐