GrapesJS 问题

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

找到 466 个问题

🔍 components
#37942021年9月20日作者 mattnoth3 个回答
0 个反应

当宽度和高度为画布100%时,基本文本组件中的RTE重叠文本

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 版本 93.0.4577.82(官方构建)(64位) 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 ![RTE澄清](https://user-images.githubusercontent.com/6341816/134036743-d8296cf5-9027-4833-b836-711c37d40f59.png) 如何复现这个漏洞?...在官方演示中,删除所有内容/在图层面板中从仅用身体开始...添加一个基础的文本组件,图层是正体>文本 3 ...将基本文本组件的尺寸设置为100%宽度和100%...

mattnoth

我没注意到你已经关闭了我之前的问题——关于那个奇怪的使用场景。你有什么解决办法的建议吗?我一直在用 updateRte 事件监听器,动态把 RTE 放进画布里确实很有挑战

artf

@mattnoth我已经回复了你的讨论[这里](https://github.com/artf/grapesjs/discussions/3782#discussioncomment-1350537),请避免再次打开同一问题。

ClaudeCode

谢谢你举报,@mattnoth。 关于RTE在基础文本组件中重叠文本,而宽度和高度100%属于Canvas,这个问题很棒。ProseMirror 推荐的方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => con...

#37832021年9月16日作者 mattnoth3 个回答
0 个反应

当文本组件设置为100%高度时,RTE文本重叠

葡萄JS版本 请帮帮我——这个问题可能在别处已经解决了,但我查了相关问题,没找到任何问题——文档里有提到要移动RTE的位置,但我不确定应该放在初始化的哪个位置——>'rteToolbarPosUpdate'是什么意思? 那个“pos”是什么意思?我只是想让RTE在设置为100%高度时,能排到文本框底部[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 版本 93.0.4577.82(官方构建)(64位)可复制演示链接 https://codesandbox.io/s/peaceful-feather-8pz5i描述一下那个虫子 当你进入沙盒时,必须手动将文本框的高度和宽度设置为100%——不知为何它无法保存 如何复现...

artf

这不是bug,只是一个奇怪的使用场景。

mingxin-yang

@artf我想更改rte工具栏的位置,但pos没有文档中提到的参数

ClaudeCode

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

#37792021年9月15日作者 stljeff13 个回答
0 个反应

Editor.getSelected().toHTML() 编码内联 JavaScript

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 最新款(镀铬)可复制演示链接 https://jsfiddle.net/4j1k0wde/24/描述一下那个虫子 如何复现这个漏洞?创建带有脚本标签的方块。使用 'editor.getSelected.toHTML()' 抓取该块的标记(这样用户可以在弹窗对话框中编辑该块的标记) 预期的行为是什么? ...我能拿到该区块的HTML,包括脚本标签及其内容 目前的行为是什么? ...要么没有脚本标签,要么特殊字符被编码。 更多信息请见:https://github.com/artf/grapesjs/discussions/3776 使用16.12版本时,'...

artf

你必须使用 allowScripts “''js const editor = Grapesjs.init({ ... allowScripts: true, }); ``` 我没看到编码问题(用真正的检查器,不要用 jsfiddle beta 控制台,后者可能有个 bug)。

stljeff1

谢谢!

ClaudeCode

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

#37782021年9月15日作者 codingmachine164 个回答
1 个反应

选择选项未显示——新的异常

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 铬可复制演示链接 https://github.com/artf/grapesjs/issues/3735描述一下那个虫子 我遇到了与选择框相关的问题。它显示的问题和主机版一样 [特质]: 'select'类型未找到 {level: 'warning'} 当我们拖动组件并点击设置特征的元素时,它会显示输入文本而不是选择框。另一方面,在组件拖动后,如果我们点击任何其他元素,然后点击带有特征的元素,选择框就会显示出来。非常奇怪! 注:此问题在此提及 https://github.com/artf/grapesjs/issues/3735。作者更新了两个文件并...

Bran72

嗨! 我从v.0.17.25开始也有你的问题。 我认为这个问题会在[下一次版本](https://github.com/artf/grapesjs/projects/30 年)中修复。 所以临时方案是降级到v0.17.22......希望对你有帮助!

artf

没错,这里已经修复了 #3735

codingmachine16

好的。当然。谢谢。供参考,这个问题在0.17.22版本中不存在,但在0.17.25版本中出现了

#37632021年9月10日作者 abolabo2 个回答
0 个反应

V0.17.25 。自定义组件定义中的特性按钮。

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Firefox可复制演示链接 https://jsfiddle.net/abolabo/3g7j519h/19/描述一下那个虫子 代码操作错误: 特质:[ { 类型:“按钮”, 文本:“点击我”, 全文:真实, 命令:(编辑器) => console.log(“特征命令”), }, ], 我本以为是<button>标签,但结果显示的是输入类型=按钮。 按钮内没有文字。没有指挥跑。行为准则[X] 我同意遵守本项目的行为准则

artf

感谢@abolabo报告,这个问题其实已经在这里修复了,#3735

ClaudeCode

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

#37592021年9月8日作者 throne19864 个回答
3 个反应

未捕获的类型错误:未能在“节点”上执行“appendChild”:参数1不属于“节点”类型。

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome新版本可复制演示链接 https://codesandbox.io/s/grapejs-reactjs-forked-zqnqo?file=/src/Editor.js描述一下那个虫子 如何复现这个漏洞?只需将图片块拖放到画布上还可以在落地页面块中找到拖放自定义图片块到 Canvas 现场演示:[https://codesandbox.io/s/grapejs-reactjs-forked-zqnqo?file=/src/Editor.js](网址) 预期的行为是什么? 当用户丢弃自定义图片块、默认图片块,或者双击Canvas上的任何图片,而...

throne1986

我已经解决了这个问题,方便以后参考 首先我移除了这个功能: editor.on(“component:add”, (model, argument) => { if (model.getName() === “Image”) { modal.setContent(ModalImages); } }); 我用这个功能替换了 编辑。Commands.add('open-assets', { run(editor, sender, opts = {}) { dispatch(se...

artf

当你运行“editor.command.run('open-assets')”时,你必须传递选项,比如 “''js editor.command.run('open-assets', { 目标:editor.getSelected(), }) ```

throne1986

@artf我解决了问题,问题是关闭问题,解决方案就是通过以下选项传递URL。 编辑。Commands.run(“open-assets”, { 目标:editor.getSelected() 网址:imageUrl }); 编辑。Commands.add(“open-assets”, { run(editor, sender, opts = {}) { dispatch(setIsOpen(true)); console.log(“imageUrl”,opts.url);...

#37332021年8月30日作者 anatoli-dp2 个回答
0 个反应

(或者只是一般问题)存储管理器加载不正确吗?

警告 请阅读并遵循接下来的三步,然后在发布问题前删除它们遵守贡献指南 https://github.com/artf/grapesjs/blob/master/CONTRIBUTING.md先快速搜索一下,看看有没有人没开同样的问题所有相关陈述/问题都必须填写/回答,否则问题可能已结案JSFiddle 入门模板 https://jsfiddle.net/szLp8h4nCodeSandbox 入门模板 https://codesandbox.io/s/1r0w2pk1vl 版本: 当前(我用的是最新版本) 你可以在控制台输入“grapesjs.version”获得版本 你能重现演示中的bug吗?[ ] 是的[x] 不 预期的行为是...

artf

你是在取材外调用“clb”,在你的加载函数里 “''js Load(keys, clb) { 取(...)。那么(r => r.json()) .then(res => { ... CLB(结果) }) } ```

ClaudeCode

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

#37322021年8月27日作者 aliibrahim1234 个回答
0 个反应

注释组件类型不支持添加特征

我正在开发一个脚本,可以在所有组件类型上添加一个特征,但注释类型没有原型对象。 代码 “''js ddw = 编辑。DomComponents.getTypes(); 对于(设i = 0;i <ddw.length;i++) { DDQ = ddw[i].id; 编辑。DomComponents.addType(ddq, { 模特:剪辑师。DomComponents.getType(ddq).model.extend({ defaults: Object.assign({}, editor.DomComponents.getType(ddq).model.prototype.defaults, { 特质:编辑。DomCompone...

aliibrahim123

@artf

artf

不要用“model.extend”/“view.extend”,那是旧API的一部分。 这就是如何正确扩展所有成分性状的一个例子 “''js const { Components } = 编辑器; Components.getTypes().forEach(({ id, model }) => { Components.addType(id, { 型号:{ 默认值:{ 特质:[ ...model.getDefaults().traits, 'new-trait', ] },...

skru

这是个很棒的解决方案,有没有什么建议可以针对函数中定义特征的组件?根据文档:https://grapesjs.com/docs/modules/Traits.html#add-traits-to-components

#37312021年8月27日作者 gustavohleal4 个回答
1 个反应

文本元素在事件扩展后无法重复选择

版本:0.17.25 你能重现演示中的bug吗?[ ] 是的[x] 不 预期的行为是什么? 通过在视图中添加事件来更新现有的类型文本组件。 详细描述那个漏洞 事件正在添加,但一旦我选择了另一个组件,就无法回到第一个组件。该版本只能提交一次。 你能附上截图、截屏或实时演示吗?**[x] 是(附上)[ ] 不 首先,我想扩展文本类型组件,添加一个事件来监听输入内容。 “JavaScript 导出默认(编辑器,opts = {}) => { const domc = 编辑。主导组件; domc.addType('text', { 浏览量:{ 事件:{ 按键:(e) => { console.log(“某些代码”) } } }, });...

gustavohleal

这其实就是问题所在。谢谢你的回复。我会关闭这期刊物。

ronaldohoch

+1:D 我们正在努力解决这个问题 https://github.com/artf/grapesjs/issues/1136 因为用 ckeditor 还是会出现这个问题。 ![图片](https://user-images.githubusercontent.com/2287371/131171028-4e03e610-2335-4b9a-9f15-081b8c6c33f8.png)

artf

“事件”不会自动合并到扩展组件中,所以你必须手动操作。 “''js 事件:{ ...domc.getType('text').view.prototype.events, 按键:(e) => {...} } ```

#37302021年8月27日作者 hrdkzala4 个回答
0 个反应

脚本标签在HTML页面中无法渲染

我创建了如下的组件。 “''js const script = function() { const script = document.createElement('script'); script.src = 'http://localhost:8888/builder/sites/site1/assets/js/jquery-1.12.4.min.js'; document.body.appendChild(脚本); }); “''js 编辑。BlockManager.add('site1', { 标签:“模板1”, 分类:“模板”, 内容:“<div>这是我的内容</div>。” }); ``` site1 - 是我现成的...

artf

抱歉,我不明白你的问题出在哪里。你创建了“comp-with-js”组件,但却没有显示你在哪里使用它...... 请提供一个可复现的演示。

mingxin-yang

拖动块后脚本功能无法工作 @artf

mingxin-yang

https://grapesjs.com/docs/modules/Components-js.html#basic-scripts

浏览所有主题