#50192023年3月31日作者 julia-alberici2 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Chrome v111 可复制演示链接 https://codesandbox.io/s/grapesjs-react-components-forked-h3j496?file=/src/index.js 描述一下那个虫子 如何复现这个漏洞?用 Reactjs 启动 Grapesjs 项目编辑器初始化后立即使用 'loadProjectData(data)'通过 'editor.onReady(() => { editor.runCommand(“preview”); } 设置预览模式;(或者实际上任何其他方式) 预期的行为是什么? 编辑器应该包含...
julia-alberici
声明一下,这其实不算是个bug,我能实现预期的行为,替换了'editor.onReady(() => { editor.runCommand(“preview”); });' 与 'editor.on('update', () => { editor.runCommand('preview'); });`
ClaudeCode
谢谢你举报,@julia-alberici。 关于使用loadProjectData()时无法在编辑器初始化时设置预览模式,这个问题很棒。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change',...
#50092023年3月24日作者 Drive4ik2 个回答
葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? 仅Firefox(所有版本)可复制演示链接 https://jsfiddle.net/03m6jz5f/描述一下那个虫子 如何复现这个漏洞?清除浏览器缓存尝试导入带有样式标签的模板,该模板带有@import字体 URL 预期的行为是什么? 样式需要加载时没有 JS 错误 目前的行为是什么? GJS 不等样式加载,尝试解析“null”表(JS 错误)。请看截图: 的问题,这是个很好的问题。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log(...
#50002023年3月22日作者 applibs2 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 铬111 可复制演示链接 https://jsfiddle.net/zfkuq7sh/ 描述一下那个虫子 有些文本被翻译,有些则没有。有些翻译是我点击某个工具按钮后才翻译出来的。 比如顶部栏按钮Sestins。它是英文版,点击这个按钮后,它会被翻译成我的母语。 为什么?行为准则 [X] 我同意遵守本项目的行为准则
artf
@applibs如果没有提供有效且可复现的演示,我帮不上忙,请包含所有缺失的依赖。
ClaudeCode
谢谢你举报,@applibs。 本地化工作怪怪的问题似乎是竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本原因 在报告中包含 Gr...
#49652023年3月8日作者 RohitLad1 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? 狩猎 可复制演示链接 https://codesandbox.io/s/funny-williamson-thb52d?file=/index.js 描述一下那个虫子 如何复现这个漏洞?前往 https://codesandbox.io/s/funny-williamson-thb52d?file=/index.js 预期的行为是什么? 选择默认组件,看看样式管理器。当一个滑块(例如,底部填充)移动后,其他滑块应保持在预定义或恒定值。有趣的是,如果类型是“number”而不是“slider”,它就能正常工作 目前的行为是什么? 当移动一个滑块时(例如...
ClaudeCode
谢谢你举报,@RohitLad。 关于PropertyComposite带四边滑块(左、右、右、B)的好问题。一个滑块的变动会导致其他数值重置。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('chang...
#49222023年2月11日作者 clonefunnels2 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Firefox 可复制演示链接 https://jsfiddle.net/jLgb0mv3/1/ 描述一下那个虫子 如何复现这个漏洞?...把这个代码放进编辑器: editor.on('styleable:change', (model, property) => { const value = model.getStyle()[property]; 如果 (value.indexOf('!important') === -1) { model.addStyle({ [property]: value + ' !important' }); } })...
artf
我只看到“复合”/“堆栈”样式管理器属性的问题,因为并非所有样式管理器属性都包含在样式中,所以在你的代码中,你只需要检查样式的值是否真实存在,比如说,'如果 (value && value.indexOf('!important') === -1) {...'
ClaudeCode
谢谢你举报,@clonefunnels。 关于使用这里提供的!重要代码会破坏背景图像和渐变,问题非常好。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.lo...
#49042023年2月5日作者 handhikadj2 个回答
葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome最新可复制演示链接 https://jsfiddle.net/snj87o6f/1/描述一下那个虫子 背景/描述 我觉得这是个bug,因为我需要保存数据,然后用编辑器重新加载。storageManager onStore 上的 Parser.parseHtml。更糟的是,图层管理器的结构在刷新页面时(onLoad运行)会出问题。看起来像编辑器。Parser.parseHtml() 无法正确解析它 如何复现这个漏洞?拖放倒计时块到画布上查看控制台 预期的行为是什么? 即使里面有 js,也能生成有效的 html,这样在 storageManage...
artf
输出是正确的(检查真实控制台,而不是 jsfiddle 坏掉的那个),仔细阅读[本节](https://grapesjs.com/docs/modules/Storage.html#project-data),绝不应该依赖 HTML/CSS 来加载项目。
ClaudeCode
谢谢你举报,@handhikadj。 关于getHtml()在里面有js时生成无效结构的建议很棒!虽然这个具体功能还没有出现在核心 API 中,但有几种方法可以实现类似的行为。 使用事件系统: “JavaScript editor.on('component:update', (component) => { 你的逻辑 }); ``` 替代方法: 听取“selector:add”以获取CSS选择器更改 使用“selector:custom”来表示自定义规则 利用“chang...
#49002023年2月5日作者 handhikadj2 个回答
葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome 最新动态可复制演示链接 https://codesandbox.io/s/silent-river-ifczcv描述一下那个虫子 如何复现这个漏洞?访问网站参见控制台。注意“”和“body”选择器 预期结果 不应重复 如果需要执行某些代码以重现该漏洞,请将其粘贴到下面: “''js editor = grapesjs.init({ storageManager:false // ... }) editor.on(“update”, () => { 保存到后端 console.log(“editor getCSs”, editor.getCs...
artf
有一些默认样式应用,你可以简单地禁用(传递空字符串)https://github.com/GrapesJS/grapesjs/blob/a83847b1b35e69e5a5810ccf1eb1e1384bf0aab1/src/editor/config/config.ts#L143-L147
ClaudeCode
谢谢你举报,@handhikadj。 关于 setStyle/getCss() 生成重复的 css 这个问题,非常好。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => con...
#48972023年2月3日作者 rudacs4 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Edge 109.0.1518.70 可复制演示链接 https://jsfiddle.net/rudacs/kr2x1mnh/ 描述一下那个虫子 如何复现这个漏洞?在 StyleManager 中更改某些属性。更改 StyleManager 中的宽度属性。 预期的行为是什么? 事件 component:styleUpdate 被触发。 目前的行为是什么? 不会触发任何事件 component:styleUpdate。 行为准则 [X] 我同意遵守本项目的行为准则
artf
嘿,@rudacs你试过用'style:property:update'吗?
rudacs
这个活动奏效了。它被改成了这个吗? 而且只针对一处房产? 我该如何获得组件和属性被更改的? 特朗克。
SagarMaria
我来这里是因为我也有同样的问题。 使用建议的“style:property:update”似乎有效,但不知为何每次点击都会触发。 另外,我们如何针对某个特定的样式属性变更,比如“文本对齐”?
#48592023年1月20日作者 zoilorys2 个回答
葡萄JS版本[X] 我确认使用最新版本的GrapesJS你用的是什么浏览器? Chrome v108可复制演示链接 https://grapesjs.com/demo.html描述一下那个虫子 如何复现这个漏洞?设置 grapesjs 编辑器导入模板 https://pastebin.com/d9S2M0iS在模板的最底部,你会看到包裹的Facebook按钮选择它所在的表格单元格,尝试改变其宽度 预期的行为是什么? 当元素的样式属性被编辑时,样式应仅更新所选元素。 目前的行为是什么? 出于某种原因改变单元格宽度会编辑该模板中的通用类,该类也会应用到其他元素上,导致意外行为(见视频)。我无法在演示设置中复现这些,也无法向公众提供我们...
artf
你只需要启用这个选项: https://grapesjs.com/docs/modules/Selectors.html#component-first-selectors
ClaudeCode
谢谢你举报,@zoilorys。 关于编辑CSS属性设置样式为公共类而非元素的好问题。推荐的 StyleManager 方法是使用事件驱动的 API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('someth...
#48542023年1月19日作者 mnutt4 个回答
葡萄JS版本 [X] 我确认使用最新版本的GrapesJS 你用的是什么浏览器? Firefox 109 可复制演示链接 没有 描述一下那个虫子 如何复现这个漏洞? 预期的行为是什么? 开发服务器启动。 目前的行为是什么? 我用的是node v16.18.1(MacOS),虽然在节点14和节点18上也出现了同样的结果。是不是我做错了什么明显的错误? 行为准则 [X] 我同意遵守本项目的行为准则
mnutt
是的,我也能用“grapesjs-style-filter”重现,同样的错误类型。
mnutt
我通过修改构建流程,通过“--targets=”“> 3%”'来绕过了这个错误,但由于使用es6类,这会导致骨干错误。
artf
我这边用全新安装无法复现,你用的是开发分支吗?