GrapesJS 问题

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

找到 3,464 个问题

#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:*”事件进行细致跟踪 构建一个插件...

#60462024年8月7日作者 danstarns2 个回答
0 个反应

提交钩子

当前代码库依赖提交钩子来执行某些规则和检查。该票旨在: 移除现有的提交钩子。 配置配置配置执行器以执行这些检查,并在开发分支或拉取请求中报告问题。 将这些职责转交给CI跑者将简化开发流程,确保问题能够以集中方式持续被发现和解决。

danstarns

相关报道: https://github.com/GrapesJS/grapesjs/issues/6045

ClaudeCode

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

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

线条处理,格式化

代码库目前使用过时的线条工具和格式化库。该票旨在: 升级到最新版本的线条处理工具和格式化库。 确保所有项目的线条和格式规则保持一致。 将这些工具集成到开发和CI流程中,实现自动化执法。 标准化这些工具将提升代码质量,减少错误,并创造更为统一的开发环境。

ClaudeCode

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

#60442024年8月7日作者 danstarns2 个回答
0 个反应

Node JS LTS 版本

在整个代码库中,我们构建并关联了基于非常旧版本Node.js的依赖。 参见: https://github.com/GrapesJS/grapesjs/blob/dev/.github/workflows/publish.yml#L15 https://github.com/GrapesJS/grapesjs/blob/dev/.github/workflows/build.yml#L15 https://github.com/GrapesJS/grapesjs/discussions/5973 https://github.com/GrapesJS/grapesjs/blob/dev/CONTRIBUTING.md?plain=...

danstarns

相关报道:https://github.com/GrapesJS/grapesjs/issues/6048https://github.com/GrapesJS/grapesjs/issues/6049

ClaudeCode

谢谢你举报,@danstarns。 关于Node JS LTS版本的好问题。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something changed...

#60402024年8月6日作者 Vampire-V4 个回答
0 个反应

无法读取未定义的属性(读取“lastComponent”)

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 版本 127.0.6533.89(官方构建)(64 位) 可复制演示链接 描述一下那个虫子 请检查此事。selectern的值未定义。我在React里用它,结果出现了错误异常。 /*返回所选组件的模型@return {Component|null}@public / EditorModel.prototype.getSelected = function () { return this.selected.lastComponent(); }; ![图片](https://github.com/user-attachments/assets/2eaf...

artf

@Vampire-V,请正确遵循bug问题模板。没有可复现的演示,我们无法帮你。

Aravinth-2020

### 葡萄JS版本[x] 我确认使用最新版本的GrapesJS### 你用的是什么浏览器?版本 127.0.6533.89(官方构建)(64位)### 可复制演示链接### 描述一下那个虫子请检查此事。select的值为未定义。我在React里用它,结果出现了错误异常。/* 返回所选组件的模型 @return {组件|null} @public */ EditorModel.prototype.getSelected = 函数 () { return this.selec...

Aravinth-2020

嘿,@Vampire-V,请正确遵循漏洞问题模板。没有可复现的演示,我们无法帮你。 你能分享一下解决办法吗? 我选择开放图层管理器时也遇到同样的问题,这个问题是在我自定义左边栏面板中选择另一个页面后出现的。

#60392024年8月6日作者 Gryphonn4 个回答
3 个反应

无法设置块显示值

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬126 可复制演示链接 https://jsfiddle.net/Gryphonn/ob1pznh6/ 描述一下那个虫子 如何复现这个漏洞?选择任意单词。包装得有型。保持该词被选中。进入通用->显示我要布洛克。我点击了“屏蔽”,但什么都没发生。 预期的行为是什么? 显示值必须是空的,这样我才能立即选择所需的内容。 或者它必须显示所选文本当前的实际显示值。这里是Inline,而不是Block。 目前的行为是什么? 目前我需要点击两次。 首先,点击除屏蔽以外的任何东西。显示场被激活。 那我应该点击屏蔽。 如果需要执行某些代码以重现该漏洞,请将其粘贴到下...

artf

是的,问题就在这里: https://github.com/GrapesJS/grapesjs/blob/1e3766f0060e6da502fccf9ba9eb938d5ac860bb/src/style_manager/model/PropertyFactory.ts#L267 添加一个新选项,比如“初始”,并设为默认选项,这样做合理吗?

danstarns

> 你好@Gryphonn,>我试图复现你的问题,但步骤不太清楚,请重新表述。bandicam.2024-08-08.21-07-14-667.mp4 感谢您的详细报告 🙏 看起来我们应该更好地处理默认显示,这样你就不用先切换到另一个显示器再切换回来。

danstarns

你好,@Gryphonn, 我试着重现你的问题,但步骤不太清楚,请重新表述。

#60382024年8月6日作者 dharma-glui2 个回答
0 个反应

像按钮上的Onclick事件这样的内联事件声明正在被移除

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 铬可复制演示链接 https://jsfiddle.net/6bn43a05/描述一下那个虫子 如何复现这个漏洞?为HTML标签添加点击事件 预期的行为是什么? 加载到编辑器后不应该删除该事件 目前的行为是什么? 它会从 HTML 中移除点击事件 如果需要执行某些代码以重现该漏洞,请将其粘贴到下面: “''js 不需要额外添加代码 ``` 同样的问题在这里报告: https://stackoverflow.com/questions/78496572/grapesjs-removes-onclick-attributes-how-to-prevent-i...

artf

这是出于安全考虑,但你可以用“config.parser.optionsHtml.allowUnsafeAttr”选项禁用它(风险自负):https://github.com/GrapesJS/grapesjs/blob/819bfcf44bb23d51990eba3b4330e9932df59cde/src/parser/config/config.ts#L116

ClaudeCode

谢谢你举报,@dharma-glui。 关于像按钮上的点击事件这样的内联事件声明正在被移除的好问题。ProseMirror 推荐的方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('s...

#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”来表示自定义...

#60242024年7月30日作者 yashvi20262 个回答
0 个反应

无法隐藏某些特定组件类型的RTE功能

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬 可复制演示链接 https://codepen.io/Harshsne/pen/xxoOyXO 描述一下那个虫子 https://github.com/GrapesJS/grapesjs/issues/6019 关于此点, 我想只为某一特定类型隐藏。 示例:当组件属于链接类型时隐藏 rte行为准则 [X] 我同意遵守本项目的行为准则

artf

https://github.com/GrapesJS/grapesjs/issues/6019#issuecomment-2267466020 请避免制造重复问题。

ClaudeCode

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

#60192024年7月26日作者 yashvi20264 个回答
0 个反应

在最新版本中无法隐藏RTE功能

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬 可复制演示链接 https://codepen.io/Harshsne/pen/xxoOyXO 描述一下那个虫子 如何复现这个漏洞?删除文本组件编辑文本组件 预期的行为是什么? RTE不应该被展示 目前的行为是什么? RTE被展示 当我把Grapesjs的版本改成0.20.4时,这个代码还能用,只有最新版本里它不能用行为准则 [X] 我同意遵守本项目的行为准则

artf

是的,'onActive'现在是异步方法,所以用'extendFnView'扩展它不够,你的代码会先于原始代码执行。 无论如何,你用一行简单的CSS也能达到同样的结果 “''CSS .gjs-rte-toolbar { 显示:无; } ```

yashvi2026

但我只想隐藏某些特定类型,比如:文本@artf

artf

你仍然可以不使用“extendFnView”来扩展视图。如[这里](https://grapesjs.com/docs/modules/Components.html#extend-parent-functions)所示,通过原型重用原始组件类型。

浏览所有主题