问题 #789💬 已回答提出于 2018年1月23日作者 Geczy1 个反应

GetComponents 不返回 components

快速解答作者 artf1

@Geczy可能需要更新描述,但“getComponents”只是返回包装器的组件(及其子节点),如果你想返回所有组件的数组,可以这样做: “''js const getAllComponents = (model, result = []) => { result.push(model); model.components().each(mod => getAllComponents(mod, result)) 返回结果; } const all = getAllComponents(editor.DomComponents.getWrapper()); ```

阅读下方完整回答 ↓

问题

感觉它根本没在解析DOM

繁殖。查看控制台日志 https://codesandbox.io/s/lxl7x2mnq

![图片](https://user-images.githubusercontent.com/1036968/35294132-d5108cd8-0043-11e8-9af9-abbd4408f195.png) 你可以看到这个沙盒里组件/模型远不止5个。

但控制台日志只显示5个 ![图片](https://user-images.githubusercontent.com/1036968/35294127-d0c84832-0043-11e8-8322-76a85e6c9247.png)

如果我在主树根部加一个,它会显示6。但如果我把它加到子组件里,它就看不到。

试着在多个地方拖动Link或其他组件,直到你看到问题

回答(3)

artf2018年1月24日

@Geczy可能需要更新描述,但“getComponents”只是返回包装器的组件(及其子节点),如果你想返回所有组件的数组,可以这样做: “''js const getAllComponents = (model, result = []) => { result.push(model); model.components().each(mod => getAllComponents(mod, result)) 返回结果; } const all = getAllComponents(editor.DomComponents.getWrapper());

Geczy2018年1月24日

效果很好,谢谢

lock[bot]2019年9月18日

由于关闭后没有近期活动,该帖子已被自动锁定。请为相关漏洞开启新一期。

相关问答

通过相似的问题讨论继续研究。

问题 #559

为什么我的组件被全宽选择?

尝试创建自定义组件,请参见[演示](https://5vo5ppvm8p.codesandbox.io/)和[代码](https://codesandbox.io/s/5vo5ppvm8p) 拖出两个“按钮”,再拖出两个“按钮+链接” 这两个按钮宽度是合适的,但自定义组件是某种...

3 个回答更新于 2019年9月18日

问题 #916

为什么图层没有元素标签名称?

我正在尝试葡萄内部结构,因为我希望将来能有所贡献。我主要关注的是用通用的HTML网站来做值得,无论CSS和HTML的风格和结构如何(包括文档类型、正文支持等)。 我原本以为“图层”层级会代表DOM树。虽然目前看起来没错,但元素的命名似乎不太对劲。例如,用这个 HTML 表示:...

3 个回答更新于 2019年12月17日

问题 #519

默认情况下没有任何阻挡

使用这段代码 我用编辑器,但没有任何区块。我也没能理解屏幕尺寸的图标,但其他图标是有的。正如你所见,CSS 正在加载,因为整体布局是正确的。 ![图片](https://user-images.githubusercontent.com/438493/32779136-9e79...

3 个回答更新于 2019年9月18日

问题 #1930

用一个特质改变2个属性

我有一个输入特性,我想更改所选输入元素上的两个属性(名称和类型),在 Canvas 上是合适的,但在最终的 html(editor.getHtml())中不行,我看过“https://grapesjs.com/docs/modules/Components.html#defin...

2 个回答更新于 2020年4月2日

与此问题匹配的付费插件

根据问题关键词和标签相关性精选,助你更快交付。

查看全部插件

正在加载付费插件推荐……

免费方案

在以下平台查看开源 GrapesJS 插件: GitHub 或在我们的免费目录中快速搜索。

浏览免费插件 →
高级方案

高级插件提供支持、定期更新和生产就绪的功能——为你节省数天的集成工作。

浏览高级插件 →

相关教程

关于同一主题的深入指南。

全部教程 →

浏览插件分类

直接跳转到市场上的插件分类页面。