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

Vue测试版本

"vue": "3.2.12",

内存泄漏快照

源码分析内存泄漏原因

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

解决方案

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

相关推荐
gnip8 小时前
企业级配置式表单组件封装
前端·javascript·vue.js
王王碎冰冰15 小时前
基于 Vue3@3.5+跟Ant Design of Vue 的二次封装的 Form跟搜索Table
前端·vue.js
天蓝色的鱼鱼16 小时前
Element UI 2.X 主题定制完整指南:解决官方工具失效的实战方案
前端·vue.js
我是日安16 小时前
从零到一打造 Vue3 响应式系统 Day 8 - Effect:深入剖析嵌套 effect
前端·vue.js
DevUI团队17 小时前
🚀 MateChat V1.8.0 震撼发布!对话卡片可视化升级,对话体验全面进化~
前端·vue.js·人工智能
好好好明天会更好17 小时前
pinia从定义到运用
前端·vue.js
代码小学僧17 小时前
Vite 项目最简单方法解决部署后 Failed to fetch dynamically imported Error问题
前端·vue.js·vite
东坡白菜18 小时前
SSE 实现 AI 对话中的流式输出
javascript·vue.js
猩兵哥哥21 小时前
前端面向对象设计原则运用 - 策略模式
前端·javascript·vue.js
EMT1 天前
在 Vue 项目中使用 URL Query 保存和恢复搜索条件
javascript·vue.js