-
-
Notifications
You must be signed in to change notification settings - Fork 30.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
页面打开再关闭,内存不能释放 #2683
Comments
这个问题我也发现,tab切换会导致内存增加无法释放,查了很多资料,目前原因不清楚,猜测是elementUI没有销毁吧 |
我看了下增长其实还好,有具体那个页面增长比较明显,或者能贴一下截图么? |
最终占用93,但这并不是上限,多操作几次很容易120M以上奔跑 但浏览器在没有任何操作后,会回收一部分,达到在50M左右 而由于tab在同一页面的特性,切换tab依然会导致内存上涨 以上结果有一个对照:那就是将上述tab的页面换成二级路由菜单 换成路由菜单,切换路由很明显看见内存下降和回收,基本稳定在50M前后波动,渲染完后内存也下降 上述tab代码使用 keep-alive 缓存,但主页面没有缓存,也对比过相同把页面改成路由菜单,并开启缓存,内存占用和使用依然比tab低且回收快
|
我操作的是引导页和图标页,内存增长比较明显,而且关闭页面只回收一点点内存。 |
参考链接:vuejs/vue#9842 |
各位大哥, 請問此問題目前有解嗎? |
各位大佬,这个问题解决了吗?我也遇到了,不知道如何解决 |
也遇见此类问题,并不知如何解决。经过多次测试,只要使用keep-alive 的include动态缓存页面,打开页面,在关闭。反复多次,内存会一直上升,并在快照里可以看见Array里面占用最多的就是我已经关闭的页面的data数据。如果会销毁组件,不应该会把data的数据也一并销毁了么?为什么会出现在快照里? |
相同的问题,重复的打开和关闭一个数据量大的页面,内存直接爆到了900M,浏览器直接崩溃了。 |
是的 我写了一个路由的缓存组件解决这个问题 你可以试下 日期:2020/8/4 // 抽象组件 destroyed() { mounted() { render() { if (cache[key]) { 引用组件import vKeepAlive from "../../../components/V/v-keep-alive";注册组件 components: { 操作完成后缓存和标签页是同步的 标签页关闭缓存删除 不知道怎么控制代码格式-。- |
截止到今天 有没有可行的办法呀 |
keyArray是干嘛的... 而且关闭标签页 页面缓存怎么没减少 |
有什么好解决办法吗 |
到现在有什么好到解决办法吗 |
到现在有什么好到解决办法吗 |
同问,有什么办法解决吗 |
1 similar comment
同问,有什么办法解决吗 |
页面打开再关闭,内存不能释放
问题复现步骤
1.在左边菜单打开几个新的tab
2.关闭打开的tab
3.重复1和2
4.使用谷歌浏览器调试工具,会发现内存比初始打开页面时多占用了很多
格外信息
1.经本人测试,
keep-alive
的include动态变化时,就会出现这个内存泄漏的bugThe text was updated successfully, but these errors were encountered: