问题 #2403💬 已回答提出于 2019年11月12日作者 varadero0 个反应

Editor.load 可能导致内存泄漏

快速解答作者 varadero

这很重要。如果不修复,GrapesJS尤其在SPA应用中使用时会很危险。

阅读下方完整回答 ↓

问题

如何繁殖:

  • 导航到 https://grapesjs.com/demo.html
  • 打开浏览器控制台(Chrome),输入以下内容:“setInterval(() => editor.load(), 1000)”,然后按回车
  • 进入“内存”标签(Chrome)查看内存使用情况

发生了什么: 记忆力不断增强。如果你打开Chrome的“性能监控”,还能看到“DOM节点”和“JS事件监听器”不断增加。大约3分钟后,“JS堆大小”从24MB增加到1000MB,“JS事件监听器”从约1600增加到50000+,“DOM节点”从8600增加到1000000+。过一段时间后,浏览器标签页会因为高内存消耗而崩溃。

如果你用非常简单的 grapesjs 项目,在画布中放置一个块,然后以一个间隔调用 'editor.load()' 开始,也会有同样的情况。

回答(3)

varadero2019年11月15日

这很重要。如果不修复,GrapesJS尤其在SPA应用中使用时会很危险。

artf2019年11月18日

我会去看看,但任何帮助都非常欢迎

diazemiliano2020年9月3日

我这里也遇到同样的问题。 即使摧毁编辑器,问题依然存在。

相关问答

通过相似的问题讨论继续研究。

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

浏览插件分类

直接跳转到市场上的插件分类页面。