GrapesJS 问题

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

找到 545 个问题

🔍 typescript
#63242024年11月22日作者 badiuciprian4 个回答
2 个反应

Sorter.setDragHelper 不是块拖拉的函数

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 131.0.6778.86可复制演示链接 https://jsfiddle.net/badiuciprian/qe28obhr/1/描述一下那个虫子 如何复现这个漏洞?尝试将任意方块拖到画布上 预期的行为是什么? 组件被渲染到画布上 目前的行为是什么? 什么都没发生,浏览器控制台显示错误: BlockView.ts:103 未捕获类型错误:a.setDragHelper 不是函数 在o.startDrag(BlockView.ts:103:12) 在 HTMLDivElement.t (cash-dom.ts:765:36) 在我的真实应用中,我会收到“...

mohamedsalem401

我成功复现了它。这只发生在“nativeDnD: false”上。这可能让块视图使用旧排序器的API。我会尝试解决这个问题。

artf

@mohamedsalem401你能帮我检查一下这个吗?

badiuciprian

谢谢你帮我处理这件事。我会关注更新。

#63182024年11月20日作者 tonypapousek4 个回答
3 个反应

无法在Block media svg中使用透明填充

葡萄JS版本[X] 我确认使用最新版本的GrapesJS本期提交时为“[email protected]”你用的是什么浏览器? Firefox 132,Chrome 131可复制演示链接 https://jsfiddle.net/x54f9v68/1/描述一下那个虫子 如何复现这个漏洞?添加自定义块,将“media”属性设置为带有透明填充的SVG查看方块标签,然后 注意填充会自动设置为“currentColor” 预期的行为是什么? 填充应该是透明的 ![截图 2024-11-20 10 38 00](https://github.com/user-attachments/assets/4e1b546c-9b65-47ec-bafe-...

samex

我认为这取决于具体使用的SVG。如果你检查其他SVG图标,你会发现它们主标签上没有填充属性(内联),<svg>而是在子<path>标签上。通过在该SVG的两个元素上设置fill=“none”属性<path>,图标应该会正确显示。希望这些建议能帮你解决这个问题!

tonypapousek

@samex 指定“fill=”none“后解决了问题,谢谢!这肯定能让我的自定义内容更可预测地工作。 除此之外,我觉得主要的痛点是尝试使用第三方SVG(比如“反应图标”)或所见即所得输出,但这些输出没有明确设置“填充”属性。考虑到这些用例,除非维护者希望关闭,否则我暂时会保持这个漏洞开放。

artf

是的,我会关闭这个,因为它和核心本身关系不大,但谢谢你指出

#63082024年11月13日作者 maxming23333 个回答
0 个反应

React 自定义界面“模态”无法显示“代码”

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 130.0.6723.117 可复制演示链接 https://stackblitz.com/edit/grapesjs-react-custom-ui?file=src%2FApp.tsx 描述一下那个虫子 如何复现这个漏洞?开放 https://grapesjs-react-custom-ui.stackblitz.io/点击此按钮 <img width=“537” alt=“image” src=“https://github.com/user-attachments/assets/35d33966-60b6-4a88-96c6-0c260d52...

danstarns

你好@maxming2333,试着点击文本框中高亮区域内的任意位置,对我来说它加载代码...... https://github.com/user-attachments/assets/89f61dc6-466a-476a-b437-d0f8ae51c7ef

maxming2333

嗨@maxming2333,试着点击文本框中高亮区域内的任意位置,对我来说它会加载代码......Screen.Recording.2024-11-19.at.23.21.03.mov 是的,确实可以在点击弹窗区域后显示,但应该在弹窗打开后立即显示,而不是点击后。

ClaudeCode

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

#63072024年11月12日作者 maxming23331 个回答
0 个反应

MJML 组件 'tagUpdated' 将使“悬停”变得不可能

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 130.0.6723.117 可复制演示链接 https://grapesjs.com/demo-mjml 描述一下那个虫子 如何复现这个漏洞?随机选择一个组件,比如演示页面的第二个“mj-section”在编辑器中将该组件悬停(你可以看到它可以悬停)找到该组件的ID,并执行“编辑器”。Components.getById('iv19a').tagUpdated()'再次尝试悬停该组件,发现无法悬停。 预期的行为是什么? 没有报错,你可以继续悬停 目前的行为是什么? 错误会被报告且无法悬停 <img width=“668” alt=“image” s...

ClaudeCode

谢谢你举报,@maxming2333。 关于 MJML 组件 'tagUpdated' 会让它无法“悬停” 的问题,这个问题很棒。ProseMirror 推荐的方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () =>...

#62712024年10月25日作者 padcom4 个回答
1 个反应

在最新的Firefox上,组件拖放功能无法使用

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Linux和Mac上的Firefox 131.0(64位) 可复制演示链接 https://grapesjs.com/demo 描述一下那个虫子 如何复现这个漏洞?开始拖动“悬停我”按钮尽量把它放在“所有文本块都可以轻松编辑......”的上面。 预期的行为是什么?按钮可以随处放置图层管理器可用于重新组织元素 目前的行为是什么?按钮只能在容器开头放置图层管理器内的拖拽也有同样的限制行为准则 [X] 我同意遵守本项目的行为准则

padcom

你们太棒了!正是时候,正好及时:)我今天下午有个演讲,现在我也能演示它在Firefox上的工作了!

padcom

我已经追踪到Firefox版本109.0的重大变更。这是第一个有问题的。108.0.2版本运行良好。希望这些信息对你有帮助。

padcom

我也测试了2024-10-24-21-16-15-mozilla-central的133.0a1,问题依然存在。

#62632024年10月24日作者 yashvi20264 个回答
1 个反应

重复链接通过RTE添加

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 铬可复制演示链接 https://codepen.io/Harshsne/pen/xxoOyXO描述一下那个虫子 如何复现这个漏洞?使用 RTE 添加词语链接,添加链接组件现在在链接组件后输入一个不留空格的词,再次选择该词,添加链接。添加后,点击文本框外。 预期的行为是什么? 第二个新增链接应包裹在第一个链接和文本上。 目前的行为是什么? 新增了两链接组件。 代码 var URL = window.prompt('输入链接链接的URL:'); rte.insertHTML('<a class=“link” href=${url}>${rte.select...

sirbeagle

点燃——唯一的坏处是我们可能永远不知道最终的修复结果。 @artf - 我觉得我们可以结束这个问题了。

sirbeagle

我已经玩了不少,能在@yashvi2026提供的Codepen上重现出这个错误。我大多数情况下的繁殖步骤非常相似: 在文本框中输入两个单词,中间有许多空格。 双击单词或用鼠标手动选择单词,选中第一个单词 使用自定义RTE添加链接 跳出框框点击 在现有文本中的链接后双击返回 在链接后高亮单词,并用鼠标将高亮扩展为包含第一个链接的首字母 使用 RTE 添加另一个链接 点击文本框外 然而,我在开发环境中无法复现这种效果。经过多次反复试验,我发现Codepen使用的是GrapesJ...

yashvi2026

是的,升级到最新版本后,这个问题就不出现了。

#62602024年10月24日作者 hr12012 个回答
0 个反应

当我在组件中使用 component:clone 时出现错误

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Microsoft Edge 130.0.2849.46可复制演示链接 https://jsfiddle.net/uwybfd98/描述一下那个虫子 如何复现这个漏洞?选择旋转木马组件点击图片右上角或左下角的空格并选择 div;克隆二次 预期的行为是什么? 克隆只触发一次 目前的行为是什么? 它递归,导致卡壳 如果需要执行某些代码以重现该漏洞,请将其粘贴到下面: “''js onRender({ el, model }) { model.getChildAt(0).forEachChild(child => { child.on('component:c...

artf

@hr1201 onRender可以多次触发,如果你不好好清理,就绝不应该在那里附加监听器。 你的逻辑也完全是模型相关的,所以它不应该出现在视图里,只需在“model.init”方法中移动代码

ClaudeCode

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

#62502024年10月23日作者 maxming23332 个回答
0 个反应

克隆页面提示“将循环结构转换为 JSON”

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome 129.0.6668.101可复制演示链接 https://grapesjs.com/demo描述一下那个虫子 如何复现这个漏洞? 开放 https://grapesjs.com/demo 在 DevTools 中运行这个脚本: “''js const page = 编辑。Pages.getSelected(); const component = page?.getMainComponent()?clone(); 编辑。Pages.add({ 名称:“11111”, 组成部分, }, { 选择:真, }); TypeError:将循环结构...

maxming2333

除了上述方法,还有其他复制页面的方法吗?

ClaudeCode

谢谢你举报,@maxming2333。 关于Clone页面提示“将循环结构转换为JSON”,这个问题非常好。推荐的组件方法是使用事件驱动的API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('somethin...

#62482024年10月22日作者 Frubl2 个回答
1 个反应

当iframe身体有缩放时,showOffsets bug出现

葡萄JS版本 [x] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬 可复制演示链接 https://jsfiddle.net/a2hbxg0y/1/ 描述一下那个虫子 如何复现这个漏洞?打开开发工具,编写 iframe 正体元素样式 - 缩放:n; 目前的行为是什么? 当鼠标悬停在元素上时,蓝色边框会正常工作,而偏移量则不然。它们的大小与变焦时相同:1; 附言:我无法分享完整复制演示的链接,因为CSS的更改需要在Canvas内完成。 附言: 可能已经有合适的缩减内容的方法,但我只找到了整个画布的缩放。我想让其中一种设备的缩放更小 行为准则 [X] 我同意遵守本项目的行为准则

artf

你不应该编辑iframe的缩放,应该用[原生API](https://grapesjs.com/docs/api/canvas.html#setzoom)

ClaudeCode

谢谢你举报,@Frubl。 关于 iframe 身体缩放时出现的 showOffsets bug,这个问题非常好。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => conso...

#62112024年10月11日作者 jlafosse4 个回答
0 个反应

递归过多

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Firefox 131.0.2 可复制演示链接 https://grapesjs.com/demo-newsletter-editor.html 描述一下那个虫子 如何复现这个漏洞?进入 grapesjs 演示,然后导入以下 html: '''html <div class=“foobar”> <img data-gjs-locked=“true” width=“500” src=“https://cdn.pixabay.com/photo/2021/12/16/15/26/forest-68747171280.jpg”> </div> 我怀疑问题来...

artf

嘿,@jlafosse谢谢你的报告。 我不认为最新版本会有这个问题: <img width=“123” alt=“截图 2024-10-21 19 00 04” src=“https://github.com/user-attachments/assets/ff074a31-cd19-4547-bb27-596c92e16d64”> 你能再试着再检查一次吗?

jlafosse

果然,这似乎解决了问题!谢谢!

artf

🙌 那就关门了,谢谢 🙇 ♂️

浏览所有主题