Vue Echarts报错 Error: Initialize failed: invalid dom

Vue整合echarts时,出现以下问题:

报错原因:dom还没挂载完成,echarts.init() 就已经开始执行

 

在网上找了各种方法,最多给出的是下面两种,但都没解决我的问题:

1、不要用created(用mounted),created这时候还只是创建了实例,但模板还没挂载完成

2、使用create情况下使用延迟加载(setTimeout延迟加载,使用nextTick延迟加载)

 

最终解决方法:

①在vue目录下安装 jQuery

npm install jquery

②在vue页面中导入jQuery依赖

import $ from 'jquery';

③在mounted方法中这样写(注意loadData为初始化echarts的函数)

$(document).ready(this.loadData())

④重启serve完美解决!

 

posted @ 2024-04-28 21:52  威哥哥哥  阅读(1134)  评论(0)    收藏  举报