Vue + Echarts页面内存占用高问题解决

Vue + Echarts页面内存占用高问题解决

1.问题描述

目前使用的是Vue2 + Echarts4.x的组合,页面如下所示。
在这里插入图片描述

就是一个类似于神策的数据看板页面,左侧是一个导航栏,右侧看板页面中包含很多个报表图片,其中报表页面中对Echarts图表进行了二次封装。点击左侧的菜单可以切换不同的看板,有些看板页面中的报表比较多,用户多次切换后页面的内存占用可以上升为GB级。严重时导致页面内存溢出,使得页面崩溃,极大影响了用户体验。

2.解决方法

参考了多篇文章,发现有可能是Echarts+Vue2中,组件销毁时,不会自动释放掉组件中持有的Echarts实例对象。因此只需要在组件销毁的时候主动销毁掉其持有的Echarts实例对象即可。

普通Vue项目可使用如下方式。

data(){return {MyEchart: null,}
}
initEcharts(){// ....
}
// ....
beforeDestroy(){if(this.MyEchart){this.MyEchart.dispose();this.MyEchart=null;}
}

Vue2 + TyepScript项目使用如下方式。

private MyEchart: any = null;private initEcharts(): void {// ...
}beforeDestroy(): void{if(this.MyEchart){this.MyEchart.dispose();this.MyEchart=null;}
}

参考文章

  • https://zhuanlan.zhihu.com/p/585392877
  • https://blog.csdn.net/weixin_47409897/article/details/129174801

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/492998.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

如何实现固定公网地址远程访问内网Wagtail管理界面

文章目录 前言1. 安装并运行Wagtail1.1 创建并激活虚拟环境 2. 安装cpolar内网穿透工具3. 实现Wagtail公网访问4. 固定的Wagtail公网地址 前言 Wagtail是一个用Python编写的开源CMS,建立在Django Web框架上。Wagtail 是一个基于 Django 的开源内容管理系统&#xf…

docker build基本命令

背景 我们经常会构建属于我们应用自己的镜像,这种情况下编写dockerfile文件不可避免,本文就来看一下常用的dockerfile的指令 常用的dockerfile的指令 首先我们看一下docker build的执行过程 ENV指令: env指令用于设置shell的环境变量&am…

Kotlin:组合挂起函数

点击查看:组合挂起函数 中文官网 点击查看:组合挂起函数 英文文档 默认顺序调用 假设我们在不同的地方定义了两个进行某种调用远程服务或者进行计算的挂起函数。我们只假设它们都是有用的,但是实际上它们在这个示例中只是为了该目的而延迟了…

【C语言基础】:操作符详解(二)

文章目录 操作符详解一、上期扩展二、单目操作符三、逗号表达式四、下标访问[]、 函数调用()五、结构成员访问操作符六、操作符的属性:优先级、结合性1. 优先级2. 结合性 操作符详解 上期回顾:【C语言基础】:操作符详解(一) 一、上期扩展 …

这家宠物品牌的内容运营怎么做的?太好玩儿了吧

养宠的朋友应该多多少少对“诚实一口”这个牌子有所耳闻,2018年诚实一口品牌正式立项,虽然不算经典品牌,但在国内也是小有名气的宠物品牌。今天媒介盒子想和大家聊的不是产品,而是想聊聊作为成立时间不长的国产宠粮品牌是如何凭借…

vant安装教程(基于vue3)

1、先安装 npm i vant 如果不行安装这个 yarn add vant 2、在main.js中引入即可 import { createApp } from vue import App from ./App.vue import router from ./router import store from ./store import { Button } from vant; import vant/lib/index.css;createApp(App).…

【Java程序设计】【C00307】基于Springboot的基Hadoop的物品租赁管理系统(有论文)

基于Springboot的基Hadoop的物品租赁管理系统(有论文) 项目简介项目获取开发环境项目技术运行截图 项目简介 这是一个基于Springboot的基于 Hadoop的物品租赁系统的设计与实现,本系统有管理员、用户二种角色权限; 前台首页&#…

Java+SpringBoot+Vue+MySQL构建银行客户管理新平台

✍✍计算机毕业编程指导师 ⭐⭐个人介绍:自己非常喜欢研究技术问题!专业做Java、Python、微信小程序、安卓、大数据、爬虫、Golang、大屏等实战项目。 ⛽⛽实战项目:有源码或者技术上的问题欢迎在评论区一起讨论交流! ⚡⚡ Java、…

c++:vector的相关oj题(136. 只出现一次的数字、118. 杨辉三角、26. 删除有序数组中的重复项、JZ39 数组中出现次数超过一半的数字)

文章目录 1. 136. 只出现一次的数字题目详情代码(直接来异或)思路 2. 118. 杨辉三角题目详情代码1思路代码2思路2 3. 26. 删除有序数组中的重复项题目详情代码思路 4. JZ39 数组中出现次数超过一半的数字题目详情代码1(暴力)思路1代码2&#…

linux c++ 开发 tensorrt 安装

tensorrt 官方下载地址(需要注册账号登录):Log in | NVIDIA Developer 根据系统发行版和CUDA版本 (nvcc -V) 选择合适的安装包 EA(early access)版本代表抢先体验。 GA(general availability)代…

redis——客户端

Redis是一个典型一对多服务器程序,一个服务器可以与多个客户端进行网络连接,每隔客户端可以向服务器发送命令请求,而服务器则接收并处理客户端发送的命令请求,并向客户端返回命令请求。 通过是一个I/O多路复用技术实现的文件事件处…

U-Mail邮件系统反垃圾病毒解决方案

随着互联网的快速发展和广泛应用,人类正逐步地从工业社会迈入信息社会,网络也已经越来越成为生产经营活动的重要场所。例如电子邮件就已经企业内外部信息交流的重要工具,它的应用还可以提高企业办公效率,利于企业信息流通的系统化…