GrapesJS 问题

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

找到 3,464 个问题

#45732022年9月9日作者 ahmafi3 个回答
1 个反应

ParseStyle 不是一个函数

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Firefox 104.0.1可复制演示链接 https://codesandbox.io/s/grapesjs-parsestyle-bug-13h771描述一下那个虫子 如何复现这个漏洞?创建一个带有“style”属性的自定义组件,在它的“model”中。在组件“model”init“函数中使用”this.addAttributes“。将该组件添加到编辑器中。 基本上,当我在组件“model”定义中有一个“style”属性时,使用'this.addAttributes',我就遇到了这个问题。 我在v0.19.4时也遇到过同样的问题。 你可以在浏览器中...

Singwai

这表现得很正常。有两个类似的按键可以改变组件的样式。(“风格”和“风格”) “styles”会用CSS字符串,并一次性附加到最终有效载荷上。我通常会为组件定义一个特定的状态的默认CSS。 “style”会接收CSS哈希,并直接用ID附加到该特定组件上。 你可以导出 HTML,看看它们的表现。 以下是相关文件: ![图片](https://user-images.githubusercontent.com/5863227/189698236-2a32d09d-3641-4c6...

artf

我猜“parseStyle 不是函数”指的是已经修正的这个:https://github.com/artf/grapesjs/pull/4520

ClaudeCode

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

#45722022年9月9日作者 stljeff14 个回答
0 个反应

页面更新事件没有触发

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 镀铬 可复制演示链接 https://jsfiddle.net/1hza4t9n/ 描述一下那个虫子 如何复现这个漏洞?初葡萄创建事件处理程序,用于页面更新时使用。更新页面观察事件处理程序未触发 预期的行为是什么? 页面事件处理程序:更新触发 目前的行为是什么? 没什么 如果需要执行某些代码以重现该漏洞,请将其粘贴到下面: “''js const editor = Grapesjs.init({ 容器:“#gjs”, fromElement: 0, pageManager: { 页码:[ { 编号:“索引”, 风格:'身体 { 颜色:红色; }',...

artf

更新页面 你是如何更新页面的? 值得一提的是,“page:*”事件只针对页面模型触发,而不是页面内容,比如: “''js 编辑。Pages.getSelected().setName('我的页面'); ```

stljeff1

任何更新、拖动方块、更改文字颜色。文本内容的变更。在 JS Fiddle 里,我拖动文本块,更改内容,换颜色。我更新时没有看到触发事件,所以我开始质疑自己的期望 我正在尝试了解如何构建自定义存储管理器。我用Grapes已经很久了,Grapes和我的服务器/数据库之间有很多“中间件”。我正在升级Grapes,所以想了解最合适的事件来跟踪所做的更改。 最终,我正在更多地了解店长,我有信心这会带我达到目标。 不过,我想了解页面管理器......我得好好考虑你说的页面模型。

artf

好吧,'page:update' 事件不是你需要的,因为它不会在内容更改时触发(所以我决定关闭这个问题,因为事件正常工作)。 你能解释一下你想构建哪种自定义存储管理器吗?存储管理器本身在内容更改时已经会触发,所以我不明白你为什么要重建这个功能。

#45702022年9月8日作者 rahul-singh-bv2 个回答
1 个反应

TypeError:m.render 不是函数

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome 版本 105.0.5195.102(官方版本)(x86_64) 可复制演示链接 描述一下那个虫子 如何复现这个漏洞?创建一个新的自定义代码块,并添加一个iframe标签,比如“<iframe src=”http://localhost:8888/embed/shopping-list“></iframe> 预期的行为是什么? 它在画布中插入一个 iframe。 目前的行为是什么? 它会出错并失败 如果需要执行某些代码以重现该漏洞,请将其粘贴到下面: 不 错误日志 行为准则 [X] 我同意遵守本项目的行为准则

artf

感谢你的报告,@rahul-辛格-bv 这个bug其实已经 https://github.com/artf/grapesjs/issues/4480 被报告并修复了,但遗憾的是修复还没发布 😞

ClaudeCode

谢谢你举报,@rahul-singh-bv。 安全和依赖性问题很重要。GrapesJS 团队积极致力于保持依赖系统的更新。 为你现在: 运行“npm审计修复”以查看可用的补丁 查看是否有更新的GrapesJS版本,可能已经解决了这个问题 如有稳定版,升级前先测试最新稳定版 如果漏洞非常严重,可以使用“npm audit fix --force”,但请务必彻底测试 理解风险: 在GitHub安全公告中查看具体漏洞详情 并非所有高严重性问题都会影响你的代码路径 某些漏洞仅在特定...

#45592022年9月6日作者 DhanaDSP11204 个回答
0 个反应

RTE操作第一次后就无法正常使用

嗨..!,RTE操作第一次后就不起作用了,当我们尝试对之前应用的元素应用该动作时,它无法正常工作 从版本0.18.3到最新版本都会出现这个问题,以下版本运行正常 复制链接 工作版本: https://jsfiddle.net/76gnxh4d/35/ 无法正常工作的版本: https://jsfiddle.net/76gnxh4d/36/ 演示: ![Grapesjs版本问题](https://user-images.githubusercontent.com/54067384/188276505-70b8ead9-f0e4-4d82-ae31-09ae478ef468.gif) Originally由@DhanaDSP1120在...

artf

应该会在最新版本(https://github.com/artf/grapesjs/releases/tag/v0.20.1)中修复。

DhanaDSP1120

@artf 字体颜色只能工作,字体背景色第二次不工作 https://jsfiddle.net/a3xgLm7c/3/ ![Val 5](https://user-images.githubusercontent.com/54067384/199990775-a8a3c5dd-d943-4f6a-b473-0af7d6ebf8ac.gif)

Sivaganesh-Akula

你好@DhanaDSP1120,我也遇到同样的问题。你有解决办法吗?

#45582022年9月6日作者 DhanaDSP11203 个回答
1 个反应

葡萄会消失 问题

同时在文字上连续用粗体斜体并下划线。一旦打开图层管理器,就会发生了,而且 它只在 V0.18.2 和更低版本中正常工作 复制链接 工作版本: https://jsfiddle.net/76gnxh4d/39/ 无法正常工作的版本: https://jsfiddle.net/76gnxh4d/40/ 演示: ![Grapesjs版本第2期](https://user-images.githubusercontent.com/54067384/188277178-5cd2021d-5070-411f-9b71-ae339f64c5d6.gif) Originally由@DhanaDSP1120在 https://github.com/...

artf

@DhanaDSP1120看起来是压力的边缘情况,没人真正关心,但如果你想深入探讨,我愿意合并一个PR

DhanaDSP1120

@artf问题未解决

ClaudeCode

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

#45462022年9月2日作者 FaisalShaikhHA4 个回答
2 个反应

当我们选择所有内层文本并使用退格时,组件会消失。即使我们尝试更新文本,链接组件也会消失。

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 版本 104.0.5112.101(官方构建)(arm64)可复制演示链接 https://codepen.io/faisal-praella/pen/rNvOwgR描述一下那个虫子 如何复现这个漏洞?选择组件,双击,然后 ctrl+a 选择文本,然后点击退格键。注意组件消失,且不可选择或编辑。 预期的行为是什么? 该组件不应消失。 目前的行为是什么? 组件会消失,且无法选择或编辑。 https://user-images.githubusercontent.com/102785785/188111128-9b174ea7-590b-4552-86d2-...

artf

这都是因为这些风格造成的。 ![Schermata 2022-09-08 alle 15 09 38](https://user-images.githubusercontent.com/11614725/189107885-adadd470-96ff-4458-ab75-b29df6bd60ee.png) 把它们拿掉,它就能正常工作了。

artf

@FaisalShaikhHA你能提供一个可复现的演示吗?因为我无法从官方演示中复现它。

FaisalShaikhHA

@artf这里是演示版:https://codepen.io/faisal-praella/pen/rNvOwgR 选择一个组件,双击,然后 ctrl+a 选择文本,然后点击退格键。 注意组件消失了,且无法选择或编辑。 即使我们尝试更新文本,链接组件也会消失。 请参考上面的视频。

#45442022年9月1日作者 akhalid-dev1 个回答
0 个反应

图层管理器可能会被移除名称,无法重新选择

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome v91 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 如何复现这个漏洞?打开图层管理器。选择“身体”下的任意物品。双击选择名称,即可“编辑”。按退格键以移除任何名字。重复这个过程两次。这样物品就没有名字,无法再次选择。 预期的行为是什么? 我们不应该能完全删除这个名字,即使完全删除了,它应该可以再次编辑。 目前的行为是什么? 目前,你可以尝试两次后移除该名字。行为准则 [X] 我同意遵守本项目的行为准则

ClaudeCode

感谢你举报,@akhalid-dev。 关于图层管理器可能会被移除名称且无法重新选择的好问题。GrapesJS 推荐的方法是使用事件驱动 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('somethin...

#45372022年8月29日作者 salemkode2 个回答
0 个反应

RangeError 最大呼叫堆栈大小超过。

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 勇敢 1.33.105 铬:96.0.4664.93 可复制演示链接 https://codesandbox.io/s/relaxed-mccarthy-v2e37w 描述一下那个虫子 如何复现这个漏洞?添加带有img或svg标签的组件类型将该组件添加到画布中 预期的行为是什么? 只要加法必须无误 目前的行为是什么? 它将会回归 “RangeError 最大呼叫堆栈大小已超过” 如果需要执行某些代码以重现该漏洞,请将其粘贴到下面: “''js const editor = Grapesjs.init({ 容器:“#gjs”, fromElement:...

artf

你好@salemkode基于[自定义组件处理](https://grapesjs.com/docs/modules/Components.html#how-components-work),通过设置“isComponent”返回“true”且无条件,产生最大调用堆栈问题。 它会不断创建新组件,因为你也有“components”属性,但由于新类型在栈顶且总是返回“true”,它会一直引用自己。所以我建议你正确调整你的“isComponent”方法,或者干脆把它移除。

ClaudeCode

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

#45292022年8月24日作者 FaisalShaikhHA4 个回答
6 个反应

当我们用类“xyz”调整图片大小时,页面上同一类的所有元素也会被调整大小,因为编辑器会给这些类添加css。

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 版本 104.0.5112.101(官方构建)(arm64)视频演示链接 https://d.pr/i/27EgH2描述一下那个虫子当我们调整带有“xyz”类的图片大小时,页面上所有同类元素也会被调整大小,因为编辑器会为这些类添加高度、宽度、CSS。但当我从图片中移除所有类时,编辑器会用 ID 来设置 CSS 的高度宽度。我正在编辑器中加载一个引导模板。 录音链接:https://d.pr/i/27EgH2 繁殖步骤:加载引导模板进行编辑。添加多个带有影子类的 div ex.(''<'div 类=''shadow'></div>''')将一张图像放入带有...

DevMetwaly

https://grapesjs.com/docs/modules/Components.html#components-css组件优先的样式 默认情况下,当你在画布中选择组件并应用样式时,会对其现有的类进行更改。这会导致所有应用类别的组件发生变化。如果你只想对特定选定组件应用样式,就必须通过这种方式选择 componentFirst 策略。

FaisalShaikhHA

谢谢,@DevMetwaly有效,抱歉我错过了。

FaisalShaikhHA

你好,@artf,首先,这个框架非常棒,感谢你让它开源。 正如上面评论里描述的,我遇到了这个奇怪的问题,如果我做错了什么或者有解决办法,请告诉我,谢谢。

#45122022年8月15日作者 mingodad3 个回答
0 个反应

本页几乎所有示例都用葡萄失败

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 版本 103.0.5060.134(官方构建)基于 Ubuntu,运行于 Ubuntu 18.04(64 位) 可复制演示链接 https://alvarotrigo.com/blog/html-css-tabs/ 描述一下那个虫子 测试上述示例时没有切换或显示标签页内容 https://alvarotrigo.com/blog/html-css-tabs/ 比如这个“4”。“动画HTML和CSS标签页”准备导入,下面显示: 行为准则 [X] 我同意遵守本项目的行为准则

mingodad

我查了一下,发现了一个已关闭的问题 https://github.com/artf/grapesjs/issues/2873 基于它,我这样做允许预览模式下勾选/无线电: 现在至少在预览中复选/无线电能用,一些演示也能在“预览”中运行。 如果这些信息能包含在文档里就太好了!

artf

感谢@mingodad我发布了表单插件的新[版本](https://github.com/artf/grapesjs-plugin-forms/releases/tag/v2.0.5),并增加了对预览的支持。

ClaudeCode

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

浏览所有主题