Element-Plus的ClickOutside指令导致内存泄漏

引起内存泄漏的源码如下

js 复制代码
var startClick = void 0;
var seed = 0;

!_vue2.default.prototype.$isServer && (0, _dom.on)(document, 'mousedown', function (e) {
  return startClick = e;
});

该内存泄漏该如何解决呢?

答案是不需要解决, 因为当鼠标点击任何其他地方时, 上述游离节点会被回收。 因为鼠标点击时,会再次触发document上绑定的mousedown事件, 此时startClick会被赋值新的值。从而startClick和游离节点解除绑定, 游离节点被正常回收。

当然最好的解决是在回调函数内部加上一层判断。对于没有绑定该指令的元素就不要给startClick赋值了。

官网反馈

github.com/element-plu...

相关推荐
flypwn13 小时前
TFCCTF 2025 WebLess题解
服务器·前端·数据库
b***748813 小时前
前端CSS预处理器对比,Sass与Less
前端·css·sass
lsp程序员01015 小时前
使用 Web Workers 提升前端性能:让 JavaScript 不再阻塞 UI
java·前端·javascript·ui
J***Q29216 小时前
前端路由,React Router
前端·react.js·前端框架
1***815316 小时前
前端路由参数传递,React与Vue实现
前端·vue.js·react.js
q***136117 小时前
十七:Spring Boot依赖 (2)-- spring-boot-starter-web 依赖详解
前端·spring boot·后端
xixixi7777718 小时前
了解一下Sentry(一个开源的实时错误监控平台)
前端·安全·开源·安全威胁分析·监控·sentry
Keely4028518 小时前
学习编写chrome插件:Hello World 扩展
前端·chrome
hhcccchh19 小时前
学习vue第三天 Vue 前端项目结构的说明
前端·vue.js·学习