#41102022年1月28日作者 cusmai3 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬 可复制演示链接 匿名 描述一下那个虫子 资产管理事件不会被触发。文件上传正确,但事件未被通知: “''js 资产事件监听者 Editor.on('asset:upload:start', () => { 上传已经开始 console.log(“上传开始”); }); editor.on('asset:upload:end', () => { 上传已结束(无论是否完成) console.log(“上传结束”); }); editor.on('asset:upload:error', (err) => { 错误处理 }); editor.on('as...
timramseyjr
@cusmai 你后来弄明白了吗?我看到了“资产:开放”和“资产:关闭”,但也没有收到你列出的任何事件。 我使用的是以下内容,我提到的两个事件是我唯一相关的“资产”事件。
ALTITUDE-DEV-FR
我自己也一样,没工作到:(
ClaudeCode
谢谢你举报,@cusmai。 AssetManager事件无法工作的问题似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本原因...
#40992022年1月25日作者 jloguercio2 个回答
葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome v96可复制演示链接 https://jsfiddle.net/809enL2w/1/描述一下那个虫子 我用domComponents: { draggableComponents: false }来避免拖动组件,只有在工具栏里用箭头拖动时才会,但如果快速选择或编辑文本,它仍然会拖动/克隆/复制选中的文本和其他组件 https://user-images.githubusercontent.com/12191804/150874942-73b3b714-5a9b-4e87-81b4-56ecd4dfb0b9.mp4 这是个bug吗?或者我该...
artf
是的,看起来原生的HTML5 D&D仍然能支持文本选择,我会试着修复。
ClaudeCode
谢谢你举报,@jloguercio。 “Using draggableComponents: false” 的问题在我尝试编辑文本时仍然会拖拽(克隆?)某些元素,这似乎是竞赛条件或状态管理时序的问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤:** 如果还没测试过,请用最新的Gra...
#40972022年1月24日作者 Joshmamroud3 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 勇敢 V1.34.81 可复制演示链接 https://jsfiddle.net/joshmamroud/vkrcxuzb/41/ 描述一下那个虫子 如何复现这个漏洞?在画布上添加一个网格块调整列大小注意 mousePosFetcher 和 this.listenTo(this, 'change:style', ...) 的控制台日志没有显示。 预期的行为是什么? 当 mousePosFetcher 被叫时,也应呼叫 CB 当从this.listenTo(this, 'change:style', this.updateWidth)调用“change...
artf
你好@Joshmamroud呼叫 CB,当 mousePosFetcher 被呼叫时 这并没有发生,因为“可调整”选项并不会直接传递给调整器,而是通过[“resize”命令(https://github.com/artf/grapesjs/blob/master/src/commands/view/Resize.js)传递。你可以看到鼠标PosFetcher被画布处理。我可以更新命令以实现这种自定义,但请记住画布会做更多逻辑来获得正确的坐标。目前,你可以自己[扩展命令](h...
ClaudeCode
谢谢你举报,@Joshmamroud。 关于 mousePosFetcher 在 resizer 配置和 change:style 监听器无法工作的好问题。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on(...
#40942022年1月22日作者 sridhar3914 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 版本 97.0.4692.71(官方构建)(64位) 可复制演示链接 https://grapesjs.com/demo.html 描述一下那个虫子 如何复现这个漏洞?在编辑器中拖放基本方块 预期的行为是什么?在编辑器中拖放基本方块,编辑器中应该会显示 目前的行为是什么? 在编辑器中拖放基础方块,无法拖放方块 在我们的项目中,在编辑器中拖放基础块时,无法拖放块 在Firefox浏览器中,编辑器中基本方块的拖放操作正常工作 https://user-images.githubusercontent.com/17172525/150640943-5cb5...
artf
我这边没看到问题(最新版 Chrome)。
sridhar391
@artf 我们使用的是 Ubuntu 操作系统,配备了最新版本的 Chrome 浏览器,请给我们举个拖放功能调试示例,并告诉我们拖拽时是否调用了回调函数
Vac1911
我也在用Ubuntu + Chrome,演示版、文档里的示例和本地安装版本都遇到同样的问题。这是我收到的错误信息: 注意:无论我丢弃哪个方块,错误都是一样的 https://github.com/artf/grapesjs/blob/30bb15b71db1b38efadef8500fb70c80821a1dd3/src/dom_components/view/ComponentImageView.js#L32
#40832022年1月20日作者 henzigo4 个回答
葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Safari 15.0可复制演示链接 https://jsfiddle.net/adw6y12f/9/描述一下那个虫子 你好, 我正在尝试按照[这里](https://github.com/artf/grapesjs/pull/1185#issuecomment-395967321)描述的设置编辑器的根组件。不幸的是,这方法不行,我可以编辑所有HTML内容。 谢谢你的建议,或者帮我修复那个bug:) 如何复现这个漏洞?创建包含一些 div 的 HTML将“id”或“class”设置为你想作为根层的某个div将该“id”设置为“init”方法的根元素: “...
artf
是的,LayerManager模块本身没有任何文档。确实,它正在等待重构的名单上,一旦完成,我们可以发布更多关于其使用情况和API文档的内容。 无论如何,我看到你之前说过你想用我的演示示例,但用倒置逻辑(只启用已知的部分)。嗯,我试过了,但不幸的是,我之前发现了一些需要修复的问题。一旦下一个版本准备好,我会发布演示示例。
artf
是的,我看到了LayerManager里根配置的问题。临时的解决办法是触发图层面板渲染时的根更改: “''js editor.on('run:core:open-layers', () => 编辑器。Layers.setRoot('#editable')); ``` 不过,LayerManager的根节点并不决定你的组件是否可编辑,它在这里的作用只是在LayerManager界面面板里更改根节点。 如果你需要禁用模板的部分内容,这大概就是你要找的:https://jsfid...
henzigo
谢谢你的回答。如果能有一些关于“根”元素的文档说明会更好,因为只有在PR/issue里才会提到。
#40822022年1月20日作者 jloguercio3 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome v96 可复制演示链接 没有演示 描述一下那个虫子 当我加载某个模板时,编辑器会添加一些初始样式,比如下面的图片,我该如何设置或移除某些样式?举个例子:我需要移除Webkit的滚动条样式,因为它会修改模板内侧的所有滚动条。 行为准则 [X] 我同意遵守本项目的行为准则
artf
检查主编辑器的配置选项(例如“baseCss”)https://github.com/artf/grapesjs/blob/dev/src/editor/config/config.js 请不要用问题漏洞来提问,这种情况下请开启讨论。
ClaudeCode
谢谢你举报,@jloguercio。 从 frame canvas 移除部分初始样式的问题似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团...
#40792022年1月17日作者 jloguercio2 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome v96 可复制演示链接 没有演示 描述一下那个虫子 我用下面的代码把所有样式都设置为 !重要 '// 让所有风格都重要以覆盖元素类 editor.on('styleable:change', (model, property) => { const value = String(model.getStyle()[property]); 如果 (value.indexOf('!important') === -1) { model.addStyle({ [property]: value + ' !important' }); } });...
artf
嘿,兄弟,我还没写完发布😅稿,冷静点...... 请在这里阅读 https://github.com/artf/grapesjs/releases/tag/v0.18.1 风格管理器经过大量更新,如果有什么不行,没人会强迫你升级......
ClaudeCode
谢谢你举报,@jloguercio。 *新版本v0.18.1破坏了脚本,使styleable:change中!重要似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤:** 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeS...
#40762022年1月17日作者 diemkay4 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome 97.0.4692.71 可复制演示链接 https://jsfiddle.net/ovrz5ug2/4/ 描述一下那个虫子 你好——我们在多人游戏场景中使用 GrapesJS 时遇到了这个 XSS 漏洞,几个特权用户可以通过编辑器(即非开发者)对模板和组件进行修改。实际上,这使他们容易受到组织内部攻击,一个用户添加了恶意代码,另一个用户可能发现并运行。 如何复现这个漏洞?在组件的“id”属性中添加恶意代码,可以直接在HTML中或通过特征管理器(并保存)——在这种情况下,'id=“<details/open/ontoggle=alert...
artf
谢谢@diemkay如果你有任何建议,请参考这个问题:https://github.com/artf/grapesjs/issues/3082
diemkay
@artf 谢谢,但我已经看过那个工单了,它并没有涵盖我这里描述的问题。 注入不在实时预览中,而是在样式管理器中,它尝试通过设置“.innerHtml”来显示组件的“id”。
artf
是的,抱歉,关得太早😁了。我会试着在下一个版本修复。
#40712022年1月14日作者 clonefunnels2 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome 和 Firefox 可复制演示链接 https://www.teamfunnels.net/login.php 演示演示 描述一下那个虫子 缺失要求;.png之后) 当页面上有背景图片但没有显示时,编辑器会这样加载。 <style> #i7u3f{ 背景-图像:URL(https://www.teamfunnels.net/assets/202201141203/img/hero-bg.png) 背景-位置:顶部中心; 背景尺寸:封面; } #i6o6l{ 背景-图片:URL(https://www.teamfunnels.net/as...
clonefunnels
我觉得是换弦导致了这个问题。 抱歉
ClaudeCode
谢谢你举报,@clonefunnels。 页面背景图片无法正常工作的问题,因为CSS加载时没有;URL 末尾似乎存在竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤:** 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSan...
#40592022年1月8日作者 miladmeidanshahi2 个回答
葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome v97描述一下那个虫子 在第 https://github.com/artf/grapesjs/blob/dev/src/selector_manager/model/Selector.js#L171 行,选择器转义函数不允许使用“/”和“.',因此我们不能使用一些顺风类,比如”basis-1/2“和”inset-0.5“...... 也许这个'/([^a-z0-9\w-\/.:]+)/gi'正则表达式会有帮助。行为准则[x] 我同意遵守本项目的行为准则
miladmeidanshahi
抱歉,我发现这个配置 https://github.com/artf/grapesjs/blob/e52b5c29e4346dba7367b769a44d99a2226e025f/src/selector_manager/config/config.js#L17
ClaudeCode
谢谢你举报,@miladmeidanshahi。 selector escape 函数不支持 tailwindcss 类的问题似乎是竞态条件或状态管理时序的问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(...