PageKit — 可自托管的 GrapesJS 建站工具,附完整源码。 获取抢先体验

问题 #3449💬 已回答提出于 2021年5月11日作者 chiragkataria220 个反应

切换页面会反复调用画布样式和脚本

快速解答作者 chiragkataria22

@artf 你能帮帮我吗?

阅读下方完整回答 ↓

问题

嗨 我正在将页面管理器集成到我的项目中。但我遇到的问题是,每当我在页面之间切换时,它会反复加载 canvas 对象中初始化时给出的 CSS 和脚本文件。 这让页面切换变得缓慢。 实施: Grapesjs.init({ pageManager: { 页码:[ { id:“第1页”, styles: '', // 或样式的 JSON 组件:“'',// 或组件的 JSON 名称:“第1页”, }, ], }, 画布:{ 风格:[ '../assets/bootstrap/bootstrap.min.css', '../assets/platforma/platforma.min.css', '../资产/editor.css', ], 剧本:[ '../assets/bootstrap/jquery-3.5.1.slim.min.js', '../assets/bootstrap/bootstrap.bundle.min.js', '../assets/platforma/platforma.bundle.min.js', ], }, }) 之后,我只需点击按钮手动添加页面

回答(3)

chiragkataria22• 2021年5月12日

@artf 你能帮帮我吗?

artf• 2021年5月22日

不幸的是,切换页面会创建一个新的iframe,所以行为是正确的。 我更倾向于移除之前的iframe,以尽量降低内存占用。一个解决办法可能是想办法重用之前的iframe,但这可能会在外部JS中引发上下文问题......所以我不确定如何正确预防这种行为。 总之,说实话,我不指望第一次加载后切换会这么慢,因为浏览器应该会缓存外部文件......你能制作一个你的经历的屏幕录制吗?

GJSBlock• 2026年5月17日

感谢你报告,@chiragkataria22。 感谢你分享关于不断切换页面、调用画布样式和脚本的报告。为了帮助团队调查并优先排序: 请提供: 一个最小可复现的例子(CodeSandbox/JSFiddle) 你的GrapesJS版本号 浏览器和操作系统信息 浏览器控制台的任何错误信息 重现问题的步骤 最有帮助的是什么: 简约代码示例(不是你整个项目) 屏幕录制或截图显示问题 明确区分预期行为与实际行为 你正在使用的GrapesJS配置 有了这些细节,维护者可以更快地识别和优先排序修复。GrapesJS团队对有充分记录的问题反应迅速。

相关问答

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

问题 #3223

Create the canvas from a URL

我一直在玩 GrapesJS,并尝试把它集成到 Symfony 5 的项目中。特别是,我希望能够在编辑器中编辑基于Bootstrap 4和其他组件(如FontAwesome Pro)的模板,以及基于这些的自定义块。 我用Symfony的Webpack-Encore捆绑包来生成应...

3 个回答更新于 2021年1月26日

问题 #3699

Cell hovering randomly displaces from actual cell

嗨! 我在公司的一个项目中使用 grapesJs 邮件编辑,配合Newsletter插件。 一切都运行得很好,除了我无法解决的这个bug: 有时候,当我在画布里拖动方块时,单元格的悬停会被打乱。最大的问题是这种行为完全随机,有时会发生也可能不会,但一旦发生真的很烦人。 唯一的模...

4 个回答更新于 2021年8月16日

问题 #4796

Custom Traits not Updating if using mjml

这种方法对普通HTML来说是正常的。但当我尝试用MJML来标记MJ-IMAGE标签时, SRC在TR标签中是更新的,但在TR标签内的img标签中没有更新 下方图片 ![截图来自2022-12-21 13-32-13(1)](https://user-images.githubu...

2 个回答更新于 2023年1月2日

问题 #3485

以HTML形式注入到画布的元素不会作为组件表现

考虑一个简单的块: 拖到画布时,可以选择该组件,并可修改其设置。 现在,我正在这样做,在卡片上添加相同的输入: '$(someElement).find(“.card”).html('<输入类型=“text”/>');' 输入输入成功添加,但表现不如之前。它无法被选中、拖拽或删...

1 个回答更新于 2021年5月26日

与此问题匹配的付费插件

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

查看全部插件

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

免费方案

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

浏览免费插件 →
高级方案

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

浏览高级插件 →

浏览插件分类

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