向现有组件添加新组件
很遗憾,我不知道有没有简单的方法可以在不递归遍历它们的情况下获得某个组件对象,但听起来这是个好主意! 你可能可以这样做,收集所有组件,然后筛选出你想要的(这段代码还没完全测试过,但希望能帮你找到正确的起点): function getAllComponents(component) { 组件 = 组件 ||编辑。DomComponents.getWrapper(); VAR components = component.get(“components”).models; component.get(“components”).forEach(function(component) { components = components...
阅读下方完整回答 ↓问题
你好,
我想问一下,是否有任何现有的支持或 API,可以将新组件添加到现有组件列表中(例如在获取或动态生成组件后)。我说的是类似这样的情况:
editor.addComponent({
家长:“parent_id”,
组件:“<p>新子组件</p>”
})
我研究过文档,最接近的是“addComponents()”''函数。遗憾的是,该函数没有指定新组件应放置的目标。
我之所以问这个,是因为我的目的是实时协作地使用 GrapesJS,每次用户操作后往返发送整个 HTML 表示实在太慢了。
此致敬礼, 米哈尔
回答(3)
很遗憾,我不知道有没有简单的方法可以在不递归遍历它们的情况下获得某个组件对象,但听起来这是个好主意! 你可能可以这样做,收集所有组件,然后筛选出你想要的(这段代码还没完全测试过,但希望能帮你找到正确的起点): function getAllComponents(component) { 组件 = 组件 ||编辑。DomComponents.getWrapper(); VAR components = component.get(“components”).models; component.get(“components”).forEach(function(component) { com...
感谢大家的回复,我觉得我的问题已经得到解答,没什么好补充的了。我现在要结束这个了,不过“find()”方法会是这个很棒框架中一个受欢迎的补充。
你好@baxxos,
你是不是想做类似的事:https://jsfiddle.net/ztqsugaw/3/?
相关问答
通过相似的问题讨论继续研究。
问题 #2008
添加大量自定义HTML后,画布会变暗且无法修改。
我以前用“editor.addComponent()”添加自定义html。 大多数时候它运行良好,但当我尝试插入一个包含大量子元素的大型 HTML 时,画布会变黑且无法修改。我只能重新加载整个编辑器才能让它重新工作。
问题 #1836
如何在所有生成的API中添加!重要性
你好,@artf, 虽然我打算用 CSS 从 Editor 编辑一些 HTML,但我需要在所有 CSS 里添加“!important”,这会被更改。 让我举个例子, 这是之前的CSS 现在我要用“#000”来更改这个字体的颜色。 只有这个更改后的 CSS 需要附加 '!impo...
问题 #816
通过编辑器 API 添加图像块
你好@artf, 当我在画布内拖放图像块时,它会触发执行“openModal”方法的图像块的“active”事件。显示上传图片的模态。 我正在尝试运行 'editor.addComponents({ type: 'image' });',并显示上传图片的模态。 我没找到任何提供...
问题 #2000
:当组件的ID被更改时触发了什么事件?
我想在设置面板中组件的ID被更改时触发一些行为。我尝试过用 'editor.on()' 处理以下事件:“Component:update:id”'component:update:Id''Component:update:{id}''component:update:{Id}'...
与此问题匹配的付费插件
根据问题关键词和标签相关性精选,助你更快交付。
正在加载付费插件推荐……
相关教程
关于同一主题的深入指南。
浏览插件分类
直接跳转到市场上的插件分类页面。