:替换当前视图,用于核心编辑器的界面组件
是的,@lexoyo最终目标是停止依赖 Backbone 的视图,将所有编辑器的 UI 元素迁移到网页组件。最终,编辑器界面会有“@grapesjs/core”(无界面)和“@grapesjs/core-ui”,并有一套可重用和可扩展的网页组件
阅读下方完整回答 ↓问题
你好!目前使用的Grapesjs结构基于利用backbonejs模型视图concept在Grapesjs生态系统内实现虚拟Dom。虚拟主导是一种极好的实践,具有广泛的应用和益处;但虚拟DOM的缺点是虚拟DOM和实际DOM itself之间的actual差距,这意味着使用虚拟DOM是一种性能牺牲,以实现Grapesjs、React、Vue等已经建立的模型视图架构。 基于GrapesJS的实时特性及其基于每次用户交互管理数千个模型对象的能力,在某些情况下,模型更新时性能被低估,导致最终用户无法获得实时体验。以这种情景为例,可以考虑调用addAttributes,用于对复杂组件type进行property变更,每次终端用户在关联的特征部分提供新输入时都会调用该变更;每次用户按下键时,模型都会有明显延迟,以根据用户输入更新目标组件的属性。 我对此的提议是去掉那些受益于实际dom、bounded到上下文对象作为当前 model的hyperhtml中的虚拟主导。HyperHTML实现实际DOM模型视图概念的方式是利用JS原生的模板字面量,并且associated块和数据interpolations。 我知道这对当前的实施来说是非常可怕的禁忌:)但我认为如果GrapesJS架构是用Backbone启动的,生态系统的子部分就不应该走同样的路,尽管这在像Grapesjs这样复杂项目的开发路径中很常...
回答(3)
是的,@lexoyo最终目标是停止依赖 Backbone 的视图,将所有编辑器的 UI 元素迁移到网页组件。最终,编辑器界面会有“@grapesjs/core”(无界面)和“@grapesjs/core-ui”,并有一套可重用和可扩展的网页组件
这很有趣:) 我迫不及待想看到那个版本,我会尽我所能贡献
好主意 我经常用lit-html,方法相同,但需要时也会添加网页组件 但我不明白骨干到底会在哪里停?没有它又会怎样。我想这个问题更广泛,是关于路线图中宣布的内容(把核心内容移除)@artf
相关问答
通过相似的问题讨论继续研究。
问题 #3083
:高亮投放区
你好@artf, 你建议如何根据可拖拽和可丢弃规则,高亮画布上选中的方块可以丢入的组件?换句话说,当用户开始从块管理器拖拽方块时,我想高亮(添加边框或内嵌框阴影)画布上可以放置的组件。这并不是为了替代掉落指示器(不确定你叫什么名字),它在拖曳时显示方块的位置,而是用来补充它。...
问题 #1745
:允许导入HTML文档
大家好, 我们在项目中使用 grapesjs 通讯插件来导入和预览模板。我们在保留模板结构时遇到了一些困难,模板结构是我们导入到 grapesjs 编辑器中的。请查看下面的示例 导入了HTML '''html <!DOCTYPE html> <html> <body> <h1>...
问题 #1806
:在特征上添加分类
你好,感谢你给我这份工作! 在类别下可以像封锁一样制作特质吗? 如果可能的话,也许可以用像BlockManager那样的Category对象? BlockManager上的分类功能正常,如果TraitManager也添加同样的分类系统,那就完美了! 你觉得实现这个功能的最佳方法...
问题 #1280
在 grapessj 编辑器中渲染第三方组件
你好, 我们希望渲染第三方控制。这是一个普遍性的问题,我们想知道我们是否走在正确的方向上。 为了渲染控制,我们需要使用第三方技术(Vue、React或类似框架)。这两个框架有一个共同的问题:它们在运行时渲染组件的能力滞后。 例如,Vue 的问题在于它移除了包装节点及其子节点。完...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
相关教程
关于同一主题的深入指南。
教程
How We Built Composeit in Record Time Using GrapesJS Shadcn
Bypass foundational builder boilerplate and focus on what truly matters.
教程
Ship to Production Faster: What’s New in GrapesJS Shadcn
Supercharge your page builder! GrapesJS Shadcn adds live drag previews, rich text / commands, dynamic data, and canvas presets to ship to prod faster.
教程
How to build a GrapesJS desktop app with Electron (complete guide 2026)
Run GrapesJS inside an Electron desktop app: mount it in the renderer, save projects to disk through IPC, and export HTML/CSS.
浏览插件分类
直接跳转到市场上的插件分类页面。