#34372021年5月6日作者 RaresVlaiduc2 个回答
@artf,如果你问我,这很重要:) 版本:v0.17.3 你能重现演示中的bug吗?[x] 是的[ ] 不 预期的行为是什么? 如果我更改设备,然后按撤销再重做,我会回到最后一个设备类型。(例如:移动端 - >平板,撤销,重做) 描述一下那个虫子 如何繁殖:编辑器登场按移动模式按撤销键按重做键检查控制台 之后,撤销/重做功能就失效了。 你能附上截图、截屏或实时演示吗?[x] 是(附上)[ ] 不 
artf
谢谢@RaresVlaiduc我会在撤销管理器里阻止追踪设备更改
ClaudeCode
谢谢你举报,@RaresVlaiduc。 关于撤销/重做问题的好问题。推荐的UndoManager方法是使用事件驱动的API。 从这里开始: 查看你所在模块的[GrapesJS文档](https://grapesjs.com/docs/) 寻找“on()”事件监听器方法 大多数操作可以通过监听编辑器和组件事件来实现 常见模式: “JavaScript 留意变化 editor.on('change', () => console.log('something changed'...
#34352021年5月6日作者 anlumo1 个回答
版本: 0.17.3 你能重现演示中的bug吗?[ ] 是的[X] 不 预期的行为是什么? 能够覆盖组件的“model.default.scrollable”中的onStart、onEnd和updateTarget,详见[文档](https://github.com/artf/grapesjs/blob/master/src/utils/Resizer.js)。 详细描述那个漏洞 我创建了一个扩展 ComponentImage 的组件。内容不是静态图像,而是根据需要渲染,当目标尺寸变化时,必须重新渲染。 根据文档,我应该可以在 'model.default.scrollable' 中定义 'onEnd',在调整大小完成后触发重新渲...
ClaudeCode
谢谢你举报,@anlumo。 Scrollable onStart/onEnd/updateTarget not Overridable 的问题似乎是竞态条件或状态管理时序的问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供...
#34342021年5月5日作者 advancedsoftwarecanada4 个回答
你可以在控制台输入“grapesjs.version”获得版本 是的:https://jsfiddle.net/75a9u1cf/2/ 预期的行为是什么? 我期望能在编辑器中编辑HTML和内容 详细描述那个漏洞** 屏幕是纯白色的,我能看到形状和拖动元素,但编辑器就是无法显示内容 半解:https://jsfiddle.net/75a9u1cf/3/
advancedsoftwarecanada
这个问题是可以解决的。我只是把HTML/JS应用换成了平面HTML——禁用了所有愚蠢的加载效果。我会在不使用编辑器时用外部脚本做一些花哨的操作。 万岁,葡萄。
advancedsoftwarecanada

advancedsoftwarecanada
半解决了,我在谷歌上找到了一些东西: https://jsfiddle.net/75a9u1cf/3/ 但有些图片仍然无法使用。
#34292021年5月4日作者 justin37372 个回答
你好@artf 感谢你在这里所做的一切 但我试着用这个插件,但就是做不到  版本:0.17.3 你能重现演示中的这个bug吗?[x] 是的[ ] 不 详细描述那个漏洞** 没有显示插件 目前的行为是什么? 什么都没发生。 你能附上截图、截图或实时演示吗?[x] 是的[ ] 不 https://jsfiddle.net/e4pbsgm0/
Ju99ernaut
遗憾的是,插件不会自动替换原始背景图像输入,所以你得手动替换。你需要想办法把这个添加到你的样式管理器配置里,并移除内置版本: “''js { ID:“背景-背景”, 财产:“背景”, 类型:“BG”, }, ``` 更多参考资料请点击这里 https://github.com/artf/grapesjs/blob/c136ea722383c0ece710ff3bbab1ce9b30f986ba/demo.html#L1154
ClaudeCode
谢谢你举报,@justin3737。 没有显示 grapesjs-style-bg 插件的问题似乎是竞态条件或状态管理时序的问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有...
#34252021年4月30日作者 anlumo2 个回答
CssComposer 的 [示例配置文件](https://github.com/artf/grapesjs/blob/c3a49015df45eb49b0beb605e45ead1ea56a3af8/src/css_composer/config/config.js#L6) 引用了一个 'staticRules' 属性。这个属性名称在源代码的其他地方没有使用(通过[GitHub搜索](https://github.com/artf/grapesjs/search?q=staticRules)验证),也没有任何作用。 版本: 0.17.3 你能重现演示中的bug吗?[ ] 是的[X] 不 (其实不太适用) 预期的行为是什么? 把...
artf
谢谢@anlumo你说得对,那是个旧选项,我会去掉的。对于静态 CSS 规则,我们有 [这些选项](https://github.com/artf/grapesjs/blob/210f87030d7d1e2aa2e5c427e4347b49ad258134/src/editor/config/config.js#L72-L77)
ClaudeCode
谢谢你举报,@anlumo。 staticRules for CssComposer Non-Functional 的问题似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(Cod...
#34192021年4月27日作者 emyasnikov2 个回答
你想给GrapesJS添加什么? 正如[BUG: Panels“可见”属性不阻止面板渲染](https://github.com/artf/grapesjs/issues/3418)中所述,我尝试在初始时阻止面板渲染。因为可见属性对我不起作用,我尝试了一些变通方法,直到调用渲染后发现所有更改都消失了。所以最好的方法是接入事件,但我什么都没找到。 我觉得渲染后触发事件会是个不错的补充,如果是的话,我很想帮忙。 最新版本有替代方案吗?[x] 是的(描述替代方案)[ ] 不 我是在自己输入 editor.render()后调用 'editor.trigger('render')' 实现的,然后用 'editor.on('render',...
artf
谢谢@emyasnikov我会关闭这个帖子,并保持漏洞问题开放
ClaudeCode
谢谢你举报,@emyasnikov。 FEAT:在editor.render执行后要挂钩的事件的问题似乎是一个竞态条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)...
#34182021年4月27日作者 emyasnikov2 个回答
版本: v0.17.3 你能重现演示中的bug吗?[ ] 是的[x] 不 预期的行为是什么? “编辑。Panels.addPanel({id: 'test', visible: false})' 即使'visible'属性设置为false,仍能渲染面板。 编辑器渲染后它完全正常,所以“panel.set('visibility', !panel.get('visibility')' 正确切换可见性。 尝试将“gjs-hidden”类和“visible: false”一起设置的变通方法1也没用。这样之后会检查可见性,“gjs-hidden”类也会被移除。至少我看到的行为是这样的。 之前已经出现过同样的问题:[#1602](https...
artf
是的,我觉得只要在PanelView.render里添加这个.toggleVisible()就行了。 如果你想冲击个人纪录,我很乐意合并:)
ClaudeCode
谢谢你举报,@emyasnikov。 面板“可见”属性不阻止面板渲染的问题似乎是竞态条件或状态管理时序的问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本...
#34162021年4月27日作者 ghost2 个回答
你好! 我知道这是这里报告的 bug,#2029,但现在我无法从'0.15.10'更新到包含解决方案的版本。 你知道我现在设置组件时有什么解决办法吗? 我用的是 VueJS 搭配 GrapesJS。 以下是我尝试设置组件的方法。 'this.grapeEditor.setComponents(myHtml);' 但“setAttribute”会跳出“不是有效的属性名称”,而且内容不会显示。 提前感谢大家。
artf
抱歉,我帮不上这么老的版本。为什么你不能更新??
ClaudeCode
谢谢你举报,@ghost。 0.15.10 - setAttribute - 不是有效属性名称的问题,似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)—...
#34122021年4月25日作者 maxtsh2 个回答
大家好。我正在使用一个用React.js编写的生产应用的超棒项目,所以我把它集成到了我的应用里。一切运行正常,但我遇到了每次编辑器更改时自动保存编辑器数据的问题。 操作系统:Windows 10 浏览器:Chrome 90 GrapesJS 版本:0.17.03,最新时间:2021年4月26日 编辑器实例: “''js const GE = Grapes.init({ 容器:“#editor”, fromElement: false, 插件:[GsPresetEmail], pluginOpts: { GsPresetEmail: {}, }, colorPicker: { appendTo: 'parent', offset:...
artf
感谢@maxtsh的反馈,实际上基础插件里那些旧块存在问题,导致存储计数器失效。我会尽快推销。 目前,作为热修复,先用这种方式更新这些区块。 “''js 编辑。Blocks.get('text').set({ 激活:真, 选择:真, 内容:{ 类型:“文本”, 内容:“请在此插入您的文本”, 风格:{ 填充:'10px' }, } }); 编辑。Blocks.get('image').set({ 激活:真, 选择:真, 内容:{ 类型:“图像” } }); ```
ClaudeCode
谢谢你举报,@maxtsh。 自动保存部分工作,插入文本后停止工作似乎是竞赛条件或状态管理时序问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本原因 在报...
#34042021年4月18日作者 Abhisheknanda13444634 个回答
你好@artf我想隐藏和显示特定组件的样式属性。 提到这个问题后,我就说 https://github.com/artf/grapesjs/issues/1428 我用这个方法写代码,但出现了错误 -: “''js 导出默认值(编辑器,配置)=> { const sm = 编辑。风格经理; const csm = config.customStyleManager; 形状分隔时的展示风格 editor.on('component:selected', function(component) { if(component.attributes.type == 'shape-divider') { sm.addSector('styl...
artf
你好@Abhisheknanda1344463你试过按照我这里的指示(https://github.com/artf/grapesjs/issues/1428#issuecomment-421640559)来做吗?你不需要在每个选择中添加或移除扇区,只需调整组件属性即可
Abhisheknanda1344463
@artf我试过,但如果我喜欢这个 https://github.com/artf/grapesjs/issues/1428#issuecomment-421640559 然后它会显示这些属性存在的样式扇区。 我想像上面提到的那样,只显示我自定义的某个特定组件的样式扇区。 不知道你是否理解我的使用场景。 请指点我。 谢谢
artf
这里有一个简短的使用示例: “''js const plugin = (editor) => { const { 组件、块、样式 } = 编辑器; [ { 类型:“简单”, 道具:{ 组件:“简单组件”, }, },{ 类型:“特殊”, 道具:{ 组件:“特殊组件”, 'styleable-require': ['special-style'], // <- 该组件需要特殊样式 }, } ].forEach(({ type, props }) => { Components...