GrapesJS 问题

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

找到 545 个问题

🔍 typescript
#59052024年5月24日作者 gladykov2 个回答
0 个反应

点击组件再点击“块”后,无法再次打开组件设置

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Opera 10.0.5130.23 |Linux 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 透明帆布在方块菜单中添加“1列”组件 ->“设置”标签会自动打开 :ok_hand:点击编辑器框内新添加的组件进入“方块”标签页再次点击组件 预期: 设置再次打开 实际情况: 设置未打开。 注意:我知道当之前没有选择组件时,这个方法是正常的。通过添加两个组件来验证这种行为。但它引入了两种不同的行为,取决于之前的用户操作。我预计点击组件总是会打开“设置” 视频: https://github.com/Gra...

artf

谢谢@gladykov,但这和核心无关,只是演示中实现的一个示例行为。

ClaudeCode

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

#58982024年5月22日作者 afrinxnahar1 个回答
0 个反应

资产管理链接断裂

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 火狐 可复制演示链接 https://grapesjs.com/docs/modules/Assets.html#initialization 描述一下那个虫子 如何复现这个漏洞?前往 https://grapesjs.com/docs/modules/Assets.html#initialization点击下方截图所示的链接 ![葡萄声2](https://github.com/GrapesJS/grapesjs/assets/125039325/b1dbd167-16b2-4bbb-b4fe-0f1eaf3db3be) 该页面重定向至此页面: !...

ClaudeCode

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

#58852024年5月14日作者 vincepv3 个回答
1 个反应

在全屏模式下,颜色选择器是隐藏的

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Firefoxe 125.0.3(64位) 可复制演示链接 https://grapesjs.com/demo-newsletter-editor.html 描述一下那个虫子 如何复现这个漏洞?安装最新版本的Grapejs点击全屏选择带有颜色属性的文本或块点击开放样式管理器点击色彩选择器 ![葡萄色](https://github.com/GrapesJS/grapesjs/assets/26679806/3349a2ba-abb2-4d87-aa69-e7c7a00eb7ad) 你可以在这里转载:[https://grapesjs.com/demo...

vincepv

问题解决了。 我找到了解决办法。 当我启动 grapejs 时,我会用 colorPicker 传递对象配置 const config = { 容器:“#editor”, fromElement: true, 其他配置选项在这里 colorPicker: { 附录:'父', 偏移:{ 顶部:26,左:-166, }, } }

artf

谢谢@vincepv,可能会因为编辑器容器的渲染方式和位置,全屏命令和颜色选择器的默认配置之间存在冲突。 在大多数情况下,只要把颜色选择器放在同一个编辑器容器里,它们就能正常工作。 “''js Grapesjs.init({ 容器:“#gjs”, colorPicker: { appendTo: '#gjs' }, // ... }) ```

ClaudeCode

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

#58822024年5月13日作者 Riddle10011 个回答
0 个反应

ID在更改后没有更新

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬 可复制演示链接 https://jsfiddle.net/szLp8h4n 描述一下那个虫子 如何复现这个漏洞?创建方块点击它进入特质标签页设置新ID进入样式标签页查看身份未变(类别下) 要查看身份证,您必须:执行前述步骤方块失焦(例如点击身体)聚焦方块 预期的行为是什么? 让ID更新时无需重新聚焦 目前的行为是什么? 需要重新聚焦才能看到ID的变化 行为准则 [X] 我同意遵守本项目的行为准则

ClaudeCode

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

#58572024年5月2日作者 hasan-aa1 个回答
0 个反应

在渲染<tr>标签内的标签<template>时,标签会被裁剪,只保留字符串内容。

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome v121可复制演示链接 https://jsfiddle.net/L27powtg/30/(修复也在那里,评论中删除了)描述一下那个虫子 如何复现这个漏洞?创建自定义的GJS模板组件,如此处说明:https://github.com/GrapesJS/grapesjs/issues/244#issuecomment-324449748添加一个带有表行的模板组件作为子节点。例如: “''HTML <template><tr><td>细胞内容</td></tr></template> 我已经为这个问题实现了一个自定义的“解析HTML”函数修复。...

ClaudeCode

谢谢你举报,@hasan-aa。 关于在标签内部渲染标签时<tr> <template> ,标签会被裁剪,只剩字符串内容。 这个问题很棒。推荐的组件方法是使用事件驱动的API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => consol...

#58202024年4月17日作者 rhoenerSBS2 个回答
0 个反应

如果组件在添加后直接移动,图层中进行双重录入

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome v123可复制演示链接 https://jsfiddle.net/xwgons8z/描述一下那个虫子 我正在尝试通过程序将新增组件移动到父组件的特定位置,因为我有子组件,它们应该保持在最后一个索引,但图层中出现了一个bug,一旦组件移动,图层面板中会有两个对应的条目。 如何复现这个漏洞?开放小提琴将组件置于画布最后一个位置(此处不会发生)在画布最后一个位置丢弃一个组件(从现在起,掉落的组件在图层面板中有两个条目) 预期的行为是什么? 组件可以移动,图层面板中仍然只有一个条目。 目前的行为是什么? 移动的组件在图层面板中有两个对应的条目。行为...

rhoenerSBS

我最初想通过父组件的可丢弃性质中的函数实现同样的行为,以防止组件在特定索引处丢弃,但遗憾的是该函数没有给出该函数的参数索引。

ClaudeCode

谢谢你举报,@rhoenerSBS。 关于如果组件在添加后直接移动,图层中会有双重录入,这个问题很棒。推荐的 Canvas 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('some...

#58122024年4月15日作者 jogibear99881 个回答
0 个反应

对合作感兴趣吗?

可复制演示链接 https://node-projects.github.io/web-component-designer-demo/index.html描述一下那个虫子 几年前我开始用 Webcomponents 设计网页的框架,现在发现了 GrapeJS。想说也许我们目标相同,可以互相受益?(目前不知道具体怎么做,但也许吧)(链接:https://node-projects.github.io/web-component-designer-demo/index.html) 目前我的流程布局设计支持缺失,但它在网格和Flexbox以及绝对定位元素中表现非常好。转换(旋转)内容也有效。我为此创建了一个VSCode扩展:https...

ClaudeCode

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

#58102024年4月14日作者 ctrhub4 个回答
1 个反应

不必要的画布风格

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Arc 版本 1.35.0 / Chromium 引擎 123.0可复制演示链接 https://grapesjs.com/demo.html描述一下那个虫子 我的特殊情况: 就我而言,插件和通用样式的所有样式都集中在头部。所以,为了在编辑器中实现类似的表现,我会把这些样式添加到Canvas头部。当我在通用样式中指定背景色时,它会被GJS画布样式覆盖。这迫使我明确规定“重要”规则,而我不想这么做。 ![截图 2024-04-14 19 51 32](https://github.com/GrapesJS/grapesjs/assets/108364491...

artf

它的目的是存储画布样式,那些不会影响 hmtl/css 结果的样式,不会导出的样式,对吧? 正确默认的机身是白色背景,这似乎是所有浏览器的默认颜色,对吧? 是的,但“iframe”主体没有默认背景色,所以才有那个样式,所以你需要根据你的使用情境找到合适的。

artf

有 [canvasCss](https://github.com/GrapesJS/grapesjs/blob/99bc79c1e45da1a2db62aace97b62206eb103bc2/src/editor/config/config.ts#L154) 选项。 下次请开个讨论区,这不是核心漏洞,而是用法错误。

ctrhub

嘿,@artf。谢谢你的回答。我不确定我们是否完全理解对方,我想澄清一个细节。 是的,我知道canvasCss属性,而且我用它来更改所选组件的样式。我理解这个属性的本质:它旨在存储画布样式,那些不会影响 hmtl/css 结果的样式,不会导出的样式,对吧? 那为什么默认画布样式有这个 CSS 规则 '''body { background-color: white; }``` ?为什么我们有理由去覆盖它? 我理解选择了主体元素的情况,在这种情况下,为交互性应用一些样式是合理...

#58012024年4月11日作者 oliviermgx1 个回答
0 个反应

在 dist/index.d.ts 中出现打字错误

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Firefox 可复制演示链接 分部/index.d.ts 描述一下那个虫子 打字错误?property 而非财产 不知道严重吗 第8053/8054行 : ' addBuiltIn(prop: string, definition: Omit<PropertyProps, “property”> & { proeperty?:“弦”;行为准则 [X] 我同意遵守本项目的行为准则

ClaudeCode

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

#57882024年4月2日作者 lexoyo3 个回答
0 个反应

CSS 属性的默认值

葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 无可复制演示链接 https://grapesjs.com/demo.html描述一下那个虫子 大家好!!<3 如何复现这个漏洞?打开[Grapesjs官方网页演示](https://grapesjs.com/demo.html)点击容器,例如英雄区容器在容器上应用“font-weight: bold;”样式 => 所有文本变粗选择其中一个文本,勾选属性“font-weight”,设置为“normal” 预期的行为是什么? “font-weight”应放在“”'空字符串或“unset”中,这样我可以选择“normal”来取消“font-weight: b...

artf

我需要选择别的,而不是普通 是的,如果没有值,默认界面会预选“默认值”,但这很容易更新 “''js 编辑。StyleManager.getProperty('typography', 'font-weight').set({ 默认: ' ' }); ``` 所以我猜这不是核心漏洞,而是“意外预期”的行为 🥲

lexoyo

哦,明白了,我以为你会希望默认值是预期的行为 😃 谢谢你的回答

ClaudeCode

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

浏览所有主题