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...

相关推荐
人民广场吃泡面14 小时前
前端该重视的编程思想
前端
冬夜戏雪14 小时前
agent的trace 和eval
开发语言·前端·javascript
IT_陈寒14 小时前
Redis的DEL命令居然没删干净数据?这个坑我爬了半天
前端·人工智能·后端
kyriewen14 小时前
面试官让我现场用 AI 改一个真实 bug——他打断我的 3 个理由
前端·面试·ai编程
计算机魔术师15 小时前
斯坦福研究:AI 对入门级岗位冲击最大
前端
感谢一路走过的人15 小时前
AGGrid刷新数据后执行筛选
javascript·ag-grid
水獭比特15 小时前
工具都批准了,为什么还不能执行?给 Agent 补上第二道校验
javascript·人工智能·node.js
Simon_He15 小时前
一个渲染内核,五个框架包:我的流式 Markdown 渲染库是怎么长成“全家桶”的
前端·vue.js·markdown
小满zs16 小时前
关于HBuilderX+ 微信小程序开发工具启动的问题
前端·uni-app
林深见鹿_海蓝见鲸16 小时前
微信小程序反编译完整教程(Windows 新手版)
前端