#35962021年7月6日作者 aimeos4 个回答
GrapesJS 代码存在 XSS 问题,因为值插入 DOM 时不会逃逸,例如 https://github.com/artf/grapesjs/blob/dev/src/assetmanager/view/AssetImageView.js#L30 如果“model.getFilename()”返回“<img src=x onerror=alert(document.cookie)>.jpg',可能会导致账户被接管。相反,代码应当是例如: 这里也有类似的问题 https://github.com/artf/grapesjs/blob/dev/src/assetmanager/view/AssetImageView.js#L15,...
aimeos
@artf 你的计划是什么?因为GrapesJS对XSS的脆弱性是一个相当严重的安全问题
artf
是的,谢谢你的报告@aimeos我一定会在下一版里修正
aimeos
@artf 文档中还经常使用“${var}'来在模板中插入变量。这也应该改变,以避免开发者在不知情的情况下引入安全问题。
#35942021年7月6日作者 maxtsh3 个回答
版本:0.17.19 你能重现演示中的这个bug吗?不会,因为是全屏,没有父容器滚动功能。 预期的行为是什么? 悬停状态干部以查看部件位置的变化 详细描述那个漏洞 当我想选择或悬停在特定组件上时,由于父滚动,干部位置显示错误。 在0.17.19之前没有这种情况,当时还算正常。 你能上传截图、截图或实时演示吗?是的 
artf
如果可滚动元素不是编辑器的父节点,你可能需要这个选项 https://github.com/artf/grapesjs/blob/dc45604962e4e6a4a075f19d5de67090bac15fa5/src/editor/config/config.js#L157-L163
no-response[bot]
由于我们请求原作者提供更多信息未获回应,本期已自动关闭。仅凭当前期刊中的信息,我们没有足够的信息采取行动。如果您有答案或找到我们需要的答案,请随时联系我们,以便我们进一步调查。
ClaudeCode
谢谢你举报,@maxtsh。 当编辑器的父滚动时,将鼠标悬停在组件上,显示错误位置的问题似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队...
#35872021年7月2日作者 milan-holes2 个回答
你好。有没有可能创建 Grapesjs 实例,而不生成整个编辑器?我创建了带有异步数据的自定义组件,需要在Node中创建后端服务,该服务从存储的组件生成HTML输出,并填充API的数据。 现在我出现错误了:ReferenceError: 窗口未定义 谢谢。
artf
我会把它关闭为重复 https://github.com/artf/grapesjs/issues/3399
ClaudeCode
谢谢你举报,@milan混蛋们。 错误错误:ReferenceError: 窗口未定义 发生在组件在组件生命周期完全初始化前尝试访问属性时。这是GrapesJS中常见的竞争条件。 立即解决办法: 如果你控制代码,可以用空检查包裹调用: “JavaScript if (component && typeof component.method === 'function') { 你的准则 } ``` 根本原因分析: 组件在调用你的方法之前不会验证状态。当多个操作同时发生时,这会...
#35792021年6月30日作者 mcottret4 个回答
版本: 0.17.4 你能重现演示中的bug吗?[x] 是的[ ] 不 繁殖步骤:前往[演示](https://grapesjs.com/demo.html)在画布内放置一个“文本”方块点击刚刚丢弃的“文本”组件打开的RTE丢失了位置(参见[附图](https://user-images.githubusercontent.com/9916749/123977724-89465180-d9bf-11eb-9e99-d1b1f9cb897c.png)) 预期的行为是什么? 打开的RTE应正确定位 目前的行为是什么? RTE位置不对,它隐藏了“文本”部分的内容,可能妨碍编辑(尤其是使用像CKEditor这样较大的自定义RTE时)。 这...
artf
是的,我想你说得对。实际上,在没有选择组件的情况下激活RTE其实没什么意义(可能对所有其他“可激活”的方块来说都合理)。
gustavohleal
嗨。我和@ronaldohoch找到了一个解决这个问题的办法。 当 RTE 启用时,我们会触发滚动事件。 这是代码: “JavaScript 触发Canvas上的滚动事件,使得葡萄 正确修复CKEditor位置 editor.on(“rte:enable”, () => { editor.trigger('canvasScroll'); }); ```
ronaldohoch
你好,刚刚更新了提交 bb4a661 的文件,我觉得非常接近,我用的是 grapesjs-ckeditor 代码和 RTE 的第一次打开,its 放置正确:  但第二次打开时,又放错地方了...... :/  在r.initTraits (grapes.min.js:2) 在r.initialize (grapes.min.js:2) at r.e.m...
rahul-singh-bv
我在v0.19.5尝试在自定义代码块内添加iframe时也遇到类似问题
ClaudeCode
谢谢你举报,@jcsofts。 错误 TypeError:无法读取未定义的属性“长度” 发生在 Canvas 尝试访问属性时,尚未完全初始化组件生命周期。这是GrapesJS中常见的竞争条件。 立即解决办法: 如果你控制代码,可以用空检查包裹调用: “JavaScript if (component && typeof component.method === 'function') { 你的准则 } ``` 根本原因分析: Canvas 在调用你的方法之前不会验证状态。当...
#35732021年6月27日作者 jasminder2 个回答
版本: 0.17.17 你能重现演示中的bug吗?[ ] 是的[x] 不 预期的行为是什么? 它不应该显示重复的控制。 目前的行为是什么?  详细描述那个漏洞 不知为何,我用原版设置的GJ时会出现重复控制。 你能附上截图、截屏或实时演示吗?**[x] 是(附上)[ ] 不
artf
把这个添加到你的初始化配置文件中,以移除默认属性'styleManager: { clearProperties: 1 },'
ClaudeCode
谢谢你举报,@jasminder。 每个组件重复控制的问题似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本原因 在报告中包含...
#35642021年6月24日作者 theSC0RP4 个回答
0.17.19 你能重现演示中的bug吗? 是的 预期的行为是什么? 我之前问过一个关于iframe刷新(#3413)的问题。[提案的解决方案](https://github.com/artf/grapesjs/issues/3413#issuecomment-831892231)在该版本(0.17.3)中是正常工作的,运行代码后,iframe应该会刷新,画布也会显示出已有的组件和样式。 详细描述那个漏洞 我在控制台第97行出现错误,显示“无法读取未ComponentView.js定义的属性'移除'” 目前的行为是什么? 在控制台运行代码后,画布不再可见,而上述错误在控制台上依然存在。 你能附上截图、截屏或实时演示吗?* 截图*...
artf
我需要确认他为什么还在试图移除那个框架,但现在,直接跳过这句“frameView.remove()”吧。
theSC0RP
@artf。谢谢。这方法只做一次就有效。 如果我在画布里做点点击,然后再运行'frameWrapView.render();',又会报错。截图和视频附在下方。 <hr> https://user-images.githubusercontent.com/30771519/123492864-5ce5aa80-d638-11eb-984e-1807614a3bfb.mp4 ”之前取消选中组件,渲染后再重新选择组件
#35492021年6月19日作者 anlumo1 个回答
版本: 0.17.4 / git master 详细描述那个漏洞** FrameView 在这里重新打包键盘和鼠标事件: https://github.com/artf/grapesjs/blob/07061ae1307fedf2a3b9bd585ce0cb30f653f112/src/canvas/view/FrameView.js#L389-L399 我认为原因与将iframe事件重定向到父帧事件有关。这本来没问题,但“createCustomEvent”函数看起来是这样的: https://github.com/artf/grapesjs/blob/07061ae1307fedf2a3b9bd585ce0cb30f653f1...
ClaudeCode
谢谢你举报,@anlumo。 createCustomEvent 无法正确处理鼠标事件的问题似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于...
#35472021年6月17日作者 japo322 个回答
版本: 0.17.4你能复现演示中的bug吗? 是的预期的行为是什么? 拖动方块时,顺序应保持不变。目前的行为是什么? 当拖拽到方块的顶部或上方时,它会按一个顺序移动。 当拖到方块组底部或下方时,顺序会不同。 如果选择大量方块或方块较高,这可能会成为问题。你能附上截图、截图或现场演示吗?   => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本原因 在报告中包含...
#35342021年6月13日作者 iabhiyaan4 个回答
NPM 运行构建 0.17.3 @version 会报错../../src/editor/dist grapes.min.js/中的/lib/codemirror../css/css 在 ./src/editor/dist/grapes.min.js../javascript/javascript 格式为 ./src/editor/dist/grapes.min.js.../src/editor/dist/grapes.min.js 中的 /xml/xml
iabhiyaan
“''js { “名字”:“葡萄”, “描述”:“免费开源网页构建框架”, “版本”:“0.17.3”, “作者”:“阿图尔·阿尔谢涅夫” “许可证”:“BSD-3-条款”, “主页”:“http://grapesjs.com”, “main”:“dist/grapes.min.js”, “副作用”: [ “.vue”, “.css”, “.scss” ], “仓库”: { “类型”:“git”, “URL”:“https://github.com/artf/grapesj...
iabhiyaan
NPM运行Build:CSS运行良好。 但 NPM 运行版本会出这些错误