Uncaught (in promise) Error: Initialize failed: invalid dom.

一、问题

Uncaught (in promise) Error: Initialize failed: invalid dom.

请添加图片描述

错误代码

<script setup lang='ts'>
import {
    
     ref, onMounted } from 'vue'
import * as echarts from 'echarts';

onMounted(() => {
    
    
    drawChat()
})

const drawChat = () => {
    
    
    const mychart = ref(null)
    let myChart = echarts.init(mychart)
    let option = {
    
     }
    option && myChart.setOption(option)
}
</script>

<template>
    <div ref="mychart" class="echart"></div>
</template>

二、问题原因

获取 dom 错误,eCharts 仅支持使用原生方法获取 dom

Vueref 方法,eCharts 不支持。

三、解决办法

使用原生方法获取 dom

正确代码

<script setup lang='ts'>
import {
    
     ref, onMounted } from 'vue'
import * as echarts from 'echarts';

onMounted(() => {
    
    
    drawChat()
})

const drawChat = () => {
    
    
    let myChart = echarts.init(document.getElementById('mychart')) // 原生方法获取 dom
    let option = {
    
     }
    option && myChart.setOption(option)
}
</script>

<template>
    <div ref="mychart" class="echart"></div>
</template>

END

猜你喜欢

转载自blog.csdn.net/m0_53808238/article/details/130230518