GrapesJS 问题

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

找到 545 个问题

🔍 typescript
#42492022年4月8日作者 iamqinglong3 个回答
0 个反应

导出后的 HTML 中图片 src 不会改变

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬100 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 如何复现这个漏洞?我正在使用外部设备将图像块拖曳到画布上从自定义模态中选择图像查看代码检查模型/目标对象属性 预期的行为是什么? 导出代码的“src”属性应包含实际的URL“<img src=”actual-url“ />' 目前的行为是什么? 我正在使用一个外部模块来自定义资产管理。 model/target 的“src”属性应该包含实际的URL。 <img width=“682” alt=“截图 2022-04-08 下午2点26分” src...

m-jojo-s

要么使用 select.set('src', doc.URL)要么启用 unsafe html 属性 参见#4148

artf

是的,我建议你直接切换到“select.set('src', doc.url)',就像之前建议的那样。

ClaudeCode

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

#42402022年4月5日作者 varadero3 个回答
1 个反应

“index.d.ts 不是模块”,在 0.18.4 中,当 grapesjs 被导入时,“import * as grapesjs from 'grapesjs';

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬99 可复制演示链接 没有关联 描述一下那个虫子 如何复现这个漏洞?我在我的typescript angular类中用了grapesjs 0.18.2,导入方式是这样——'import as grapesjs from 'grapesjs';升级至0.18.4版本 预期的行为是什么? 没有错误 目前的行为是什么? Typescript 在“import as grapesjs from 'grapesjs”这行时会抱怨;并出现以下错误: 导入词的“葡萄”部分有红色波浪。我猜这是因为“index.d.ts”是在0.18.4(https://githu...

artf

应该在这里解决 https://github.com/artf/grapesjs/pull/4216 我想你应该在当前版本中禁用TS。

aharishsundhar

@artf 我用的是Grapesjs最新版本 ^0.18.4 我安装了 NPM Grapesjs 来运行,index.d.ts文件上出现了错误,能不能请你更新一下问题 NPM安装: ![截图,2022-06-03 12-12-01](https://user-images.githubusercontent.com/72383148/171802669-b8bde687-a7c4-4a9d-8489-e00d1d3ca165.png) 手动更改本地: ![截图截图,来源于2...

ClaudeCode

谢谢你举报,@varadero。 关于 0.18.4 中 “index.d.ts 不是模块”的好问题,当 grapesjs 导入时,用“import as grapesjs from 'grapesjs';.ProseMirror 推荐的方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “Ja...

#42362022年4月4日作者 m-jojo-s1 个回答
0 个反应

粘贴命令不尊重可拖拽/可放置的属性

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome 版本 98.0.4758.80(官方构建)(arm64) 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 如何复现这个漏洞?添加“标签”块从新增组件复制标签页将标签贴到组件外的任何位置 预期的行为是什么? 复制的标签页不应该被粘贴到“标签页”组件之外。 复制的组件不应粘贴在无法拖拽或拖拽的地方。 目前的行为是什么? 复制的标签可以粘贴到任何地方。 复制组件的可拖拽/可丢弃属性在粘贴时不被尊重。 应该会在src/commands/view/PasteComponent.js中修复 行为准则...

ClaudeCode

谢谢你报告,@m-jojo-s。 关于粘贴命令不尊重可拖拽/可丢弃属性的好问题。推荐的组件方法是使用事件驱动的API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something changed'));...

#42332022年4月2日作者 clonefunnels1 个回答
0 个反应

从StyleManager插入样式,且带有重要 broken

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬 可复制演示链接 https://jsfiddle.net/q7cxvpf5/1/ 描述一下那个虫子 当我使用这段代码时,它在一次div更改后就停止工作,之后也不再接受对其他div进行样式更改: editor.on('styleable:change', (model, property) => { const value = model.getStyle()[property]; 如果 (value.indexOf('!important') === -1) { model.addStyle({ [property]: value + ' !im...

ClaudeCode

谢谢你举报,@clonefunnels。 StyleManager中带有 !important broken 的 insert 样式问题似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复...

#42082022年3月22日作者 ronaldohoch4 个回答
2 个反应

每个元素的样式点击状态错误

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Brave Last 在 Chrome Last 和 Safari Last 上测试过。 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 如何复现这个漏洞?我有个视频:https://www.loom.com/share/508e91098bf247bd93d525f2efa00a36前往演示页面选择任意元素......将状态设置为“点击”编辑任意边界半径保持元素在其他元素中点击第一个bug:界面会变成“点击”状态样式,之后又会切换到正常状态第二个bug:刷新页面,正常刷新或清除缓存,你会看到样式化的“...

artf

谢谢你的报告@ronaldohoch 这个问题将在下一个版本中修复。

ronaldohoch

@artf成功了!谢谢你 😊

ronaldohoch

@artf我没法本地运行,因为有好几个测试都没通过,你也是这样吗?我能尝试修复它们吗? 例如: ![图片](https://user-images.githubusercontent.com/2287371/160130276-227ecfa1-e1cf-459c-971d-590ae684f209.png)

#41952022年3月15日作者 varadero4 个回答
1 个反应

如果在文本块中粘贴第二次,文本会消失

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬99 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 如何复现这个漏洞?打开 https://grapesjs.com/demo.html 并删除所有示例部分放置一个“文本版块”打开文本编辑器,输入3行文字。大致是这样的:从文本编辑器复制这三行回到GrapesJS演示页面,双击“consecterur”前的文本部分(另一个词也可以用)按“CTRL+V”粘贴文本点击外部提交更改将鼠标悬停在“第2行”上,发现它是独立的“文本”元素双击“2”前的“2行”按“CTRL+V”粘贴同样的两行文本点击外部提交更改...

jmaks1

@artf 这个问题与最新版本相关。(v0.19.4) 如果你在编辑文本时复制粘贴嵌套组件,就会出现这个bug。普通粘贴(cmd + v)复制所有 html,包括 id,移除焦点后,带有相同 id 的 html 会被删除。

varadero

我可以确认这个问题只在Grapesjs 0.18.3出现——我降级到0.18.2后就没出现这个问题。旧版本也还可以。

jmaks1

我可以确认这个问题只在Grapesjs 0.18.3出现——我降级到0.18.2后就没出现这个问题。旧版本也还可以。 在0.18.2版本中,嵌套组件不再在文本内部创建。

#41922022年3月11日作者 drashtibpatel2 个回答
0 个反应

DragMode:absolute/translate 时拖拽边界问题

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome,Firefox 可复制演示链接 https://jsfiddle.net/drashti/9xk5ph8j/1/ 描述一下那个虫子 我正在为我的客户使用Grape JS构建器来设置构建器和模板。为此,我想要setDragMode是“绝对或翻译”,这样可以根据这些元素并排设置。 但做完后,元素就离开了画布区域。我想像普通拖拽模式一样限制它,但位置应该绝对控制。 有没有办法限制元素进入画布区域外? 请参阅下方图片作为参考。 https://www.awesomescreenshot.com/image/23890163?key=97ac62...

artf

不,目前不可能。拖拽模式并不是公开且有文档的特性,所以我收集了所有问题和功能来支持这里:https://github.com/artf/grapesjs/issues/3770#issuecomment-944915841

ClaudeCode

谢谢你举报,@drashtibpatel。 dragMode: absolute/translate 的 drag boundary 问题似乎是竞赛条件或状态管理时序的问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可...

#41912022年3月10日作者 mastercorp-usa4 个回答
1 个反应

我们正在尝试在 Angular 10 应用中存储 grapesJS 编辑器中的数据,但出现了 CORS 错误,附上了下面的图片

葡萄JS版本 [x] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome 99.0.4844.5 可复制演示链接 https://jsfiddle.net/ct5r4kvg/ 描述一下那个虫子 如何复现这个漏洞?集成到 Angular 10 应用中,包含以下代码运行时我们在Angular应用中出现CORS错误,而邮递员工作正常 预期的行为是什么? 我们需要在 API 请求中添加除 grapesJS 属性外的额外对象 目前的行为是什么? 我们无法添加额外的属性,也出现了 CORS 错误 如果需要执行某些代码以重现该漏洞,请将其粘贴到下面: VAR Editor = Grapesjs.init({ 容器:“#gj...

lalitog

我的服务器端脚本是用PHP写的,所以我在脚本里加了这个代码,对我来说运行得很好—— 头部('访问-控制-允许-起点:*'); 头部('Access-Control-Allow-Methods: GET, POST'); 头(“访问-控制-允许-头:X-请求-与”);

mastercorp-usa

请大家帮帮我们解决这个问题,这对我来说非常紧急

artf

CORS问题和GrapesJS无关

#41892022年3月10日作者 vladninja1 个回答
0 个反应

当设置更改时(使用第三方如React/Vue),该组件被取消选择。

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬98 可复制演示链接 https://codesandbox.io/s/grapesjs-react-components-n6sff?file=/src/base-react-component.js 描述一下那个虫子 如何复现这个漏洞?选择“列表”组件打开组件设置更改“MLS ID”特性参数→组件不会被选中,而是显示工具栏。 预期的行为是什么? 组件仍然会被选中。 目前的行为是什么? 当特征参数变更时,组件取消了选择。 行为准则 [X] 我同意遵守本项目的行为准则

ClaudeCode

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

#41872022年3月9日作者 Townsheriff1 个回答
0 个反应

编辑器销毁方法在 React 中会报错

葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬98 可复制演示链接 https://codesandbox.io/s/withered-rain-z74rst?file=/src/App.js 描述一下那个虫子 如何复现这个漏洞?卸载子元素创建带有回调的 useEffect 编辑器被销毁 预期的行为是什么? 没有错误 目前的行为是什么? 掷出错误,因为找不到元素。至少 'getBody()' 返回 null。 分支0.18.3的堆栈追踪,禁用了minifaction。 如果代码沙盒消失: “''js 从“grapesjs”导入葡萄; 从 “react” 导入 React; 导出默认函数 App...

ClaudeCode

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

浏览所有主题