vue keepAlive组件中的storageContainer存在内存泄漏

Vue测试版本

"vue": "3.2.12",

内存泄漏快照

源码分析内存泄漏原因

在keepAlive组件的setup函数中, 声明了一个变量 const storageContainer = createElement('div');,在组件失活的时候会将当前组件的真实DOM移到storageContainer节点下面; 但当组件卸载时,没有将该组件的真实DOM从storageContainer节点上移除,故导致内存泄漏。

解决方案

在pruneCacheEntry函数中, 将组件真实DOM从storageContainer节点下移除

相关推荐
muyun28004 小时前
History 模式 vs Hash 模式:Vue Router 技术决策因素详解
vue.js·算法·哈希算法
码上暴富7 小时前
axios请求的取消
前端·javascript·vue.js
tager9 小时前
Vue 3 组件开发中的"双脚本"困境
前端·vue.js·代码规范
海天胜景12 小时前
vue3 el-table 去除小数 并使用千分号
javascript·vue.js·elementui
漫天星梦13 小时前
Vue2项目搭建(Layout布局、全局样式、VueX、Vue Router、axios封装)
前端·vue.js
星光不问赶路人14 小时前
TypeScript 模块扩展
vue.js·typescript
柏成14 小时前
qiankun 微前端框架🐳
前端·javascript·vue.js
天下无贼17 小时前
【轮播图】H5端轮播图、横向滑动、划屏效果实现方案——Vue3+CSS position
css·vue.js
泉城老铁18 小时前
Spring Boot + Vue + ZLMediaKit 实现 RTSP 拉流播放的完整方案
java·vue.js·音视频开发
花菜会噎住18 小时前
Vue3核心语法进阶(生命周期)
前端·javascript·vue.js·生命周期