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

Vue测试版本

"vue": "3.2.12",

内存泄漏快照

源码分析内存泄漏原因

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

解决方案

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

相关推荐
啧不应该啊2 小时前
vue配置axios
前端·javascript·vue.js
shiming88793 小时前
Vue.js与Flask/Django后端配合
vue.js·django·flask
计算机学姐4 小时前
基于协同过滤算法+PHP的新闻推荐系统
开发语言·vue.js·vscode·mysql·php·phpstorm
啧不应该啊4 小时前
element plus 按需导入vue
前端·javascript·vue.js
Gungnirss4 小时前
vue中提示Parsing error: No Babel config file detected
前端·vue.js·ubuntu
请叫我欧皇i4 小时前
el-form动态标题和输入值,并且最后一个输入框不校验
前端·javascript·vue.js
工业互联网专业4 小时前
毕业设计选题:基于ssm+vue+uniapp的驾校预约管理系统小程序
vue.js·小程序·uni-app·毕业设计·ssm·源码·课程设计
工业互联网专业4 小时前
毕业设计选题:基于ssm+vue+uniapp的面向企事业单位的项目申报小程序
vue.js·小程序·uni-app·毕业设计·ssm·源码·课程设计
花花鱼5 小时前
vue3 本地windows下的字体的引用
vue.js
罗政6 小时前
[附源码]SpringBoot+VUE+Java实现人脸识别系统
java·vue.js·spring boot