问题 #1893💬 已回答提出于 2019年3月14日作者 trivago-vgarcia1 个反应

所有方块的样式必须相同

快速解答作者 artf1

首先,你的例子/问题和块的自定义渲染无关(你用它来自定义块的界面,而不是画布中的组件)。 解决方案是将该类设为私有(https://github.com/artf/grapesjs/issues/1566#issuecomment-437167731)

阅读下方完整回答 ↓

问题

我们使用的是blockManager,正如你在codesandbox发布的示例中看到的,遵循与自定义渲染相关的文档。对我们来说,意想不到的是,每次用户编辑某个块的样式时,所有块都会更新为该样式,因为样式被设置为块中使用的类,这里是 .row-cell。

  • 这是预期的行为吗?
  • 我们怎么避免?

谢谢!

参考文献: https://codesandbox.io/s/wkr3oqxpw8 https://grapesjs.com/docs/modules/Blocks.html#custom-render

回答(3)

trivago-vgarcia2019年3月27日

@artf 谢谢你的回复!抱歉,因为举例不够清楚。这种情况在每个案例中都会发生,我的意思是,即使它们在默认模板中定义了,而且不仅仅是在添加新选择器时才会出现。所以,使用“selector:add”并不能解决所有情况。

你还有其他建议吗?谢谢!

artf2019年3月29日

这种情况在每个案例中都会发生,我的意思是,即使它们在默认模板中定义了,而且不仅仅是在添加新选择器时才会出现。所以,使用selector:add并不能解决所有情况。

即使通过解析添加新类,“selector:add” 也会被触发。所以,把它作为插件放置,这样在模板加载前就会被连接,监听器会传递任何新类

相关问答

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

与此问题匹配的付费插件

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

查看全部插件

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

免费方案

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

浏览免费插件 →
高级方案

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

浏览高级插件 →

相关教程

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

全部教程 →

浏览插件分类

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