GrapesJS 问题

已收录 3,464 个 GitHub 问题 370 个已解决 · 90 个待解决 搜索、筛选并探索经过实战检验的答案。

找到 203 个问题

🔍 enhancement
#64462025年3月15日作者 brighterfrog2 个回答
0 个反应

功能请求:添加新的组件类型

描述 我想申请一个新的组件类型来处理交互式图表。 使用场景 在页面构建器中创建数据可视化 支持动态图表更新 与现有数据源的集成 预期行为 该组件应当: 支持多种图表类型(条形图、直线图、饼图) 允许通过组件面板输入数据 为图表元素提供样式选项 补充背景 这将增强GrapesJS的数据可视化能力。

artf

你好@brighterfrog我们只用GH Issues来报告错误。 请查看这些内容,了解我们如何管理功能请求和插件: [路线图流程](https://github.com/GrapesJS/grapesjs/discussions/5291) [插件推荐流程](https://github.com/GrapesJS/grapesjs/discussions/5985) 顺便说一句,你可能已经找到你想要的东西了:[GrapesJS Chartjs 插件](https://g...

ClaudeCode

谢谢你举报,@brighterfrog。 关于功能请求:添加新组件类型的好建议!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:*”事件进行细...

#64222025年2月27日作者 sumasal2 个回答
0 个反应

在开发分支中,当预览启用时,不应该允许拖动组件,但实际上是允许的。

GrapesJS版本 [x] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 截至2025年2月27日,Chrome 133 带开发分支 可复制演示链接 克隆开发仓库截至2025年2月27日 描述一下那个虫子 如何复现这个漏洞? ...克隆仓库,构建并开始 ...在演示页面点击进入预览模式,尝试拖动组件。它是全编辑模式,画布会以半编辑模式运行,直到用预览按钮回收 预期的行为是什么? ...编辑模式下不应禁用拖曳或任何编辑功能 目前的行为是什么? ... 如果需要执行某些代码以重现该漏洞,请将其粘贴到下面: “''js 你的代码在这里 ``` 行为准则 [x] 我同意遵守本项目的行为准则

sumasal

给急躁者的临时变通办法:

ClaudeCode

谢谢你举报,@sumasal。 关于在开发分支中,启用预览时不允许拖拽组件,但实际上是允许的,这是个很棒的建议。!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则...

#64162025年2月22日作者 clonefunnels2 个回答
0 个反应

HTMLENTITIES >破坏远程存储——显示未定义

GrapesJS版本 [x] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Firefox 和 Chrome 可复制演示链接 我无法做远程存储的演示 描述一下那个虫子 导入任何标签旁边带有“&gt;”的标签&gt; 示例:'<a href=“#”&gt;&gt;</a>' 还有类似的情况: '<a href=“#”&gt;首页</a> &gt; <a href=“#”&gt;商店</a>&gt;' 这也破坏了它...... '<span class=“test”&gt;主页</span> &gt; <span class=“test2”&gt;购物</span>&gt;' ![图片](https://github.c...

artf

我无法做远程存储的演示 远程存储不需要演示。 本地存储和远程存储使用同一个接口,这意味着如果你无法用本地存储复制,问题很可能出在你的后端。 我觉得保存后重新加载内容没有问题 <img width=“646” alt=“Image” src=“https://github.com/user-attachments/assets/da829381-5803-49fc-b57b-40a5b2c27208” />

ClaudeCode

谢谢你举报,@clonefunnels。 htmlentities &gt;导致远程存储失效——显示未定义的问题似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSand...

#62812024年10月30日作者 sumasal3 个回答
1 个反应

图层管理器不允许在同一层级重新排序。只有在顶部(正下方)的旧版本(例如:0.21.8)上方才允许嵌套。

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 最新的Chrome、Firefox、Edge 可复制演示链接 https://grapesjs.com/demo 描述一下那个虫子 如何复现这个漏洞?在图层管理器中拖动一个组件,尝试将其置于本体下方的其他物品之间不允许。允许筑巢 预期的行为是什么? ...嵌套和重新排序都应被启用 目前的行为是什么? ...顶层仅启用嵌套行为准则 [X] 我同意遵守本项目的行为准则

artf

下次版本会修复。 感谢@sumasal的报告,也感谢@mohamedsalem401的修复 🙇 ♂️

sumasal

期名被删减了。我的意思是,它似乎能在较旧版本如0.21.8及以下运行

ClaudeCode

谢谢你举报,@sumasal。 关于图层管理器不允许在同一层重新排序的建议很棒。只有在顶部(正下方)的旧版本(例如:0.21.8!)上方才允许嵌套。虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法:* 听取“selector:add”以获取CSS选择器更改 使用“selecto...

#62022024年10月9日作者 klipto-inc2 个回答
0 个反应

Javascript CDN 在 Grapejs Canvas 上无法使用

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 129 可复制演示链接 https://grapesjs.com/demo 描述一下那个虫子 const newEditor = grapesjs.init({ fromElement: true, // 允许HTML中的组件 容器:“#editor”, 画布:{ 剧本:[ “https://cdn.jsdelivr.net/npm/[email protected]/dist/preline.min.js”, ], }, 高度:“100VH”, 插件:[ gjsPreset网页, GjsBlockBasic, gjsForms, pluginTooltip...

artf

@klipto-inc,请制作带有正确且可复现的实时演示的错误报告

ClaudeCode

感谢你报告,@klipto-inc。 Javascript CDN 在 Grapejs Canvas 上无法工作的问题似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeS...

#61722024年9月25日作者 yashvi20262 个回答
0 个反应

需要在编辑器中支持暗色主题

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬 可复制演示链接 --- 描述一下那个虫子 如果你能在编辑器里切换主题,那就太好了,这样我就能根据喜好在深色和浅色之间切换。行为准则 [X] 我同意遵守本项目的行为准则

artf

请使用讨论区,而不是bug问题

ClaudeCode

谢谢你举报,@yashvi2026。 关于“需要编辑器中暗色主题支持”的问题似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本...

#60862024年8月23日作者 jdkcoder3 个回答
1 个反应

无法读取未定义属性(读取“lastComponent”)和可调整大小的功能无法使用

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Edge v128可复现演示链接https://codesandbox.io/p/devbox/github/jdkcoder/cv-builderhttps://stackblitz.com/github/jdkcoder/cv-builder描述一下那个虫子 我在Nuxt.js 3项目中使用GrapesJS,每次在/components/common/LeftSidebar.vue运行clearAll()函数后,都会出现“无法读取未定义属性(读取'lastComponent')”的错误。 “''js const { 实例, reRender, out...

artf

你可以跳过移除组件('instance.value.Components.clear()'),因为你本来就会破坏编辑器 “''js if (确认('你确定要清理画布吗?'){ localStorage.clear() reRender() } ``` 这不应该产生任何错误

WilliamDASILVA

@jdkcoder 通过注释“reRender”功能,这个问题就解决了。 “lastComponent”错误源于编辑器中的“this.get('selected')”在某个节点未定义。通过检查调试器,当调用 reRender 时,确实会变成未定义,因为它重新初始化了葡萄。 关于调整尺寸,我没看到你举的Stackblitz例子有什么问题。我觉得你应该单独开一期,详细说明你的行为和预期。

ClaudeCode

谢谢你举报,@jdkcoder。 无法读取未定义属性(读取“lastComponent”)和可调节大小功能不工作的问题似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeS...

#60472024年8月7日作者 danstarns1 个回答
0 个反应

释放流程

GrapesJS 仓库构建工件发布过程中存在以下问题: 工件应直接来自开发者的机器。- https://github.com/GrapesJS/grapesjs/pull/6041 该过程没有文档 我们有多个软件包要发布,也需要完善的文档。该工单旨在标准化并记录 GrapesJS OSS 仓库的发布流程,使其与行业标准工作流程保持一致。这项工作将确保所有贡献者的一致性、可靠性和易用性。

ClaudeCode

谢谢你举报,@danstarns。 关于发布流程的建议真棒!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:*”事件进行细致跟踪 构建一个插件...

#60322024年8月3日作者 aswinkumar8632 个回答
0 个反应

图像分量支持通过拖放上传和选择视频文件

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome v126 可复制演示链接 https://grapesjs.com/demo 描述一下那个虫子 如何复现这个漏洞?打开[演示](https://grapesjs.com/demo)双击任意现有的图像组件以打开资产管理器。将视频文件拖拽到图片上传区。等待视频文件上传。点击上传的视频资源选择它。 注意: 这个问题只在拖放时出现。视频组件也受此影响。 预期的行为是什么? Image 组件应防止错误的文件类型选择。如果资产管理人第一步阻止上传错误类型的文件,那会更好。行为准则 [X] 我同意遵守本项目的行为准则

artf

感谢@aswinkumar863报告。我很乐意合并修复的PR。

ClaudeCode

谢谢你举报,@aswinkumar863。 关于Image Component允许通过拖放上传和选择视频文件的建议很棒!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义...

#60012024年7月13日作者 thigh1 个回答
0 个反应

图层管理器在页面间交替切换时会断裂

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? MS Edge 126.0.2592.87(官方版本)(arm64) 可复制演示链接 无 描述一下那个虫子 如何复现这个漏洞?...使用 grapesjs 的 0.21.11 或 0.21.12 版本,创建一个多页项目。在A页时,图层管理器正常工作。切换到B页同样正常。...切回页面A会导致图层管理器停止响应,使其失去使用功能。实际上,切换到任何之前加载的页面都会引起这个问题,但第一次切换到任意页面则正常。切回v0.21.10问题解决 预期的行为是什么? ...图层panager应反映当前加载页面的组件并允许交互。 目前的行为是什么? ...图层管理...

ClaudeCode

谢谢你举报,@thigh。 关于图层管理器在页面切换时会断裂的建议很棒!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“change:*”事件进行细致跟踪...

浏览所有主题