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

Vue测试版本

"vue": "3.2.12",

内存泄漏快照

源码分析内存泄漏原因

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

解决方案

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

相关推荐
霍理迪16 分钟前
Vue的响应式和生命周期
前端·javascript·vue.js
SuperEugene6 小时前
Vue3 模板语法规范实战:v-if/v-for 不混用 + 表达式精简,避坑指南|Vue 组件与模板规范篇
开发语言·前端·javascript·vue.js·前端框架
Luna-player6 小时前
Vue 3 + Vue Router 的路由配置,简单示例
前端·javascript·vue.js
angerdream6 小时前
最新版vue3+TypeScript开发入门到实战教程之Vue3详解props
javascript·vue.js
~欲买桂花同载酒~7 小时前
项目优化-vite打包优化
前端·javascript·vue.js
踩着两条虫8 小时前
AI 驱动的 Vue3 应用开发平台 深入探究(二十):CLI与工具链之构建配置与Vite集成
前端·vue.js·ai编程
踩着两条虫8 小时前
AI 驱动的 Vue3 应用开发平台 深入探究(二十):CLI与工具链之自定义构建插件
前端·vue.js·ai编程
极梦网络无忧9 小时前
基于 Vite + Vue3 的组件自动注册功能
前端·javascript·vue.js
雪碧聊技术10 小时前
前端vue代码架子搭建
前端·javascript·vue.js·前端项目代码框架搭建
极客小云11 小时前
【Electron-Vue 企业级安全启动模板:electron-vue-theme-template 使用指南】
vue.js·安全·electron