JavaScript 事件监听器内存泄漏

标签 javascript reactjs google-chrome

我正在使用 React、Redux 和 Three.js 开发 WebGL 应用程序。我的应用程序使用鼠标移动和点击作为输入。现在由于某种原因,每当我单击或移动鼠标时,我的应用程序都会变得越来越慢。如下面的性能配置文件所示,似乎存在某种内存泄漏导致事件监听器使用的内存不断增长。

enter image description here

据我了解,屏幕截图中的黄线显示事件监听器的内存使用量不断增长。

但是这条黄线到底代表什么?它是事件监听器使用的内存量吗?或者注册听众的数量?或者注册/未处理事件的数量?

有没有人在过去遇到过类似的问题并且可能找到了解决方案?

我的应用程序/原型(prototype)的完整代码可以在 this repository 中找到.不幸的是,我还无法找出问题的原因或用简单的代码片段重现它。

最佳答案

这实际上可能只是一个开发问题。如果您使用 NODE_ENV=production 构建 React 项目,此问题可能不会持续存在。

这似乎与 React 上的未解决问题有关:https://github.com/facebook/react/issues/12141

关于JavaScript 事件监听器内存泄漏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47391178/

相关文章:

html - 自定义 @font-face 不会在 chrome 中加载(chrome 自定义字体不会呈现)

html - whatsapp html 链接不适用于 iphone 8,chrome

html - 那么...我们现在必须开始为 chrome 的日历添加 polyfilling 吗?

reactjs - Babel 未知选项 : . 调用者

javascript - 为什么 vscode 不将 react 代码识别为 react javascript 而是将其格式化为 vanilla javascript

javascript - 扩展类但不能访问子类的功能

javascript - 在给定的三个单词的字符串中检测连字符的模式

javascript - Bootstrap 动画未按预期工作

reactjs - 如何从 Material 表中删除覆盖装载机?

javascript - Redux:渲染时 props 未定义