问题 #1389💬 已回答提出于 2018年8月28日作者 mariselvanm0 个反应

在组件中为子元素添加属性

快速解答作者 artf

这里查看所有可用的组件方法:https://grapesjs.com/docs/api/component.html 顺便说一句,你应该做类似的 “''js element.on('component:add', component => { component.find('.col1, .col2').forEach(comp => { comp.addAttributes({ ... }); }); 你不需要重新渲染 editor.render(); }); ```

阅读下方完整回答 ↓

问题

这是我试图在编辑器中添加的组件。

`

<div class=“page”> <div class=“col1”></div> <div class=“col2”></div> </div> `

添加这些组件后,我尝试给这些元素添加一些计算值,比如这样,

`

element.on('component:add',function(ele){

ele.addAttributes({

'data-top' : topOffset,

'data-left' : leftOffset,

});

editor.render();// 用于渲染更新后的html });`

但这个代码只更新了“.page”组件。

我如何将这些attr添加到“.page”组件中的“.col1,.col2”元素中?

回答(2)

artf2018年9月2日

这里查看所有可用的组件方法:https://grapesjs.com/docs/api/component.html

顺便说一句,你应该做类似的 “''js element.on('component:add', component => { component.find('.col1, .col2').forEach(comp => { comp.addAttributes({ ... }); });

你不需要重新渲染 editor.render(); });

lock[bot]2019年9月17日

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

相关问答

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

问题 #1584

无法从 editor.getComponents() 获取 Block 的脚本

下面是我要添加的组件。this.editor.BlockManager.add('dob-mmyy-pii', { ID:“多布-米”, 标签:“DOB(MM,YYYY)(PII)”, 类别:“形式”, 属性:{class:'fa fa-birthday-cake'}, 内容:...

3 个回答更新于 2019年11月19日

问题 #1817

在编辑器渲染块时更改 HTML 内容

你好@artf 我有一个区块进入了区块管理器 和上面的脚本一样,我希望在该块渲染到界面的同时添加动态HTML内容。 我知道我不需要改变DOM。但我需要用模型来更改,但我不知道怎么用 ID/类别的模式来更改。 你能帮我吗?我该怎么实现?

3 个回答更新于 2020年2月22日

问题 #1733

如何移除由添加块管理器脚本添加的脚本标签

你好@artf 我想导出最终/基于制作的HTML内容,但不包括脚本(只导出由块管理器添加的脚本)。 假设我用block-manager添加一个新块,比如 现在当我把这个块放进编辑器时,它会在文档里创建一个 div 标签,同时还会生成类似的脚本, 所以,当我尝试用“editor....

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

问题 #1683

当编辑器或渲染元素带有动态IP时,如何更改ID/类?

你好,@artf, 希望你一切安好。 我有两个关于动态方块添加的问题, 1)能用动态ID渲染方块吗? 2)能否更改 'block:drag:stop' 或 'component:add' Grapesjs 方法中的 id/class/onClick 方法? 这是我的一些代码,...

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

与此问题匹配的付费插件

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

查看全部插件

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

免费方案

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

浏览免费插件 →
高级方案

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

浏览高级插件 →

相关教程

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

全部教程 →

浏览插件分类

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