Editor.load 可能导致内存泄漏
问题
如何繁殖:
- 导航到 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)
这很重要。如果不修复,GrapesJS尤其在SPA应用中使用时会很危险。
我会去看看,但任何帮助都非常欢迎
我这里也遇到同样的问题。 即使摧毁编辑器,问题依然存在。
相关问答
通过相似的问题讨论继续研究。
问题 #1708
StyleManager 事件每次变更都会多次触发
复制: 在全新安装的GrapesJS中,在演示页面(index.html内)添加一个事件监听器,如下: 'editor.on('component:styleUpdate:width', (model) => { console.log(模型); });问题: 当更改任何元素的...
问题 #2189
如何在RTE/自定义块中添加“有序/无序列表”选项
嗨 我正在尝试用 grapesjs创建一个有序列表。我尝试在 RTE 中添加以下内容: 如果我的页面在编辑器初始化时预先填充了 html,这个方法就适用,比如下面: 预填充编辑器: ”创建了一个新组件,里面用了带有“<thead>''和”<tbody>''标签的表元素。但用 'editor.getHtml()' 方法获取 html 时,'<thead>' 和 '<tbody>' 标签会被省略...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
浏览插件分类
直接跳转到市场上的插件分类页面。