Panels "visible" attribute doesn't prevent panel rendering
版本: 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()就行了。 如果你想冲击个人纪录,我很乐意合并:)
GJSBlock
谢谢你举报,@emyasnikov。 面板“可见”属性不阻止面板渲染的问题似乎是竞态条件或状态管理时序的问题。这通常发生在组件生命周期事件和DOM修改重叠时,导致状态不一致。 尝试什么: 添加setTimeout包装器以确保DOM已稳定: “JavaScript setTimeout(() => { 你在这里的行动 }, 0); 推荐的下一步步骤: 如果还没测试过,请用最新的GrapesJS版本测试 提供最小可重复的示例(CodeSandbox)——这有助于团队更快识别根本...