【求助】内存泄露导致页面崩溃的问题
粉丝福利 : 关注VUE中文社区公众号,回复视频领取粉丝福利
问题背景:
1、我们的项目是vue-cli 3.x + Element-ui结合开发
2、我们的项目中数据量比较大,所以有时候会从后台请求比较大的数据量,如一个10000条数据的树结构。
问题现象:
发现在某个路由页面使用el-tree渲染大数据量的树时,出现内存增长较多,然后路由销毁后,内存基本上没有被释放(或者说释放的很少)。如进入该页面,内存增长300MB(IE浏览器),离开时,内存只释放了50MB。由此现象,多操作几次,浏览器直接崩溃。
定位思路:
首先大致认为是大数据量的原因导致内存增长过快,最后想解决如何通过释放掉大数据占用的内存,从而达到解决内存溢出的效果。如下所有测试验证流程全部在Chrome浏览器上进行。
最后决定抛开所有其他可能的影响因素,使用如下代码进行验证:
在一个空白路由页面,只在mounted方法中定义了一个大对象,发现多次切换该路由,内存没有得到有效释放,一直增长最终导致浏览器崩溃。
请问论坛里有没有大牛能够帮忙解答一下,这种问题是什么原因,该如何解决?感谢!