【报错】nginx部署项目后Echarts折线图无法展示

简介: 在Vue3+TS+Arco项目中,打包后使用Nginx部署的Echarts折线图显示异常,报`Cannot read properties of undefined(reading 'setOption')`错误。问题源于在定义div时使用了Vue2的`$refs`语法,导致DOM元素无法正确初始化Echarts。解决方法有两种:1) 不推荐使用`document.getElementById`获取DOM并初始化Echarts;2) 推荐在Vue3中通过`ref`获取DOM,在`onMounted`中使用`echarts.init`并借助`nextTick`异步绘制数据。

@[TOC]

一、报错

vue3+TS+Arco项目打包之后nginx部署之后Echarts折线图无法正常展示,报错信息如下

在这里插入图片描述

二、分析

原因是在定义div时,使用了vue2中的$refs语法,渲染dom进行绘制echarts时,拿到dom元素之后无法进行 init 初始化,因此 Cannot read properties of undefined(reading 'setOption')报错。

在这里插入图片描述
在这里插入图片描述

三、解决

1、解决方式一,不建议使用

在取dom元素进行渲染时,使用原生的 document.getElwmwntById进行拿取 dom 元素,之后就可正常对echart 进行 init 初始化

在这里插入图片描述

在这里插入图片描述

2、解决方式二,建议使用

  • 使用ref获取div
  • 定义const echart = ref();
  • 在onmounted中进行init:echarts.init(echart.value, 'macarons');
  • 使用nextTick进行异步绘制数据
    ```js

```

四、小Tips

输入 cmd 进入命令行窗口

在这里插入图片描述
在这里插入图片描述

相关文章
|
6天前
|
监控 物联网 应用服务中间件
流媒体方案之Nginx——实现物联网视频监控项目
流媒体方案之Nginx——实现物联网视频监控项目
流媒体方案之Nginx——实现物联网视频监控项目
|
6天前
|
应用服务中间件 网络安全 nginx
快速上手!使用Docker和Nginx部署Web服务的完美指南
快速上手!使用Docker和Nginx部署Web服务的完美指南
|
6天前
|
网络协议 应用服务中间件 Linux
在Redhat 9部署nginx服务
Nginx是一个高性能、开源的HTTP和反向代理服务器,以其异步非阻塞模型处理高并发,并具有轻量级、高可靠性、良好扩展性和热部署特性。在Redhat 9.2上安装nginx-1.24.0涉及安装依赖、下载解压、源码编译、配置环境变量及启动服务。安装步骤包括:yum安装依赖包,下载解压Nginx,运行configure脚本预编译,make && make install编译安装,然后赋权、配置环境变量,关闭防火墙和SELinux,最后启动Nginx并进行浏览器测试。
487 3
|
6天前
|
JavaScript 前端开发 应用服务中间件
angular引入包、路由权限配置、打包问题与nginx配置问题(简单部署)
angular引入包、路由权限配置、打包问题与nginx配置问题(简单部署)
26 0
|
6天前
|
应用服务中间件 nginx
【Nginx】 nginx 项目上线后刷新页面丢失 404
【Nginx】 nginx 项目上线后刷新页面丢失 404
29 2
|
4天前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(1)
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(1)
|
4天前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷
|
4天前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(3)
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(3)
|
4天前
|
应用服务中间件 nginx Docker
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(2)
Docker部署Nginx以及挂载数据卷(代码详细展示)_nginx 挂载大文件卷(2)
|
6天前
|
应用服务中间件 nginx
如何在树莓派部署Nginx并实现无公网ip远程访问内网制作的web网站
如何在树莓派部署Nginx并实现无公网ip远程访问内网制作的web网站
12 0