Por definición, todos los bloques tienen que tener el mismo estilo
En primer lugar, tu ejemplo/problema no tiene nada que ver con el renderizado personalizado en bloques (lo usarías para personalizar la interfaz de los bloques, no de los componentes del lienzo). Una solución es establecer esa clase privada
Lee la respuesta completa abajo ↓Pregunta
Estamos usando blockManager, como puedes ver en el ejemplo publicado en codesandbox, siguiendo la documentación relacionada con el renderizado personalizado. El comportamiento inesperado para nosotros es que cada vez que un usuario edita los estilos de un bloque, todos los bloques se actualizan con ese estilo, porque el estilo se ha establecido en la clase usada en el bloque, en este caso .row-cell.
- ¿Es este el comportamiento esperado?
- ¿Cómo podemos evitarlo?
¡Gracias!
Referencias: https://codesandbox.io/s/wkr3oqxpw8 https://grapesjs.com/docs/modules/Blocks.html#custom-render
Respuestas (3)
En primer lugar, tu ejemplo/problema no tiene nada que ver con el renderizado personalizado en bloques (lo usarías para personalizar la interfaz de los bloques, no de los componentes del lienzo).
Una solución es establecer esa clase privada
@artf ¡Gracias por la respuesta! Perdona, porque el ejemplo no era claro. Me pasa en todos los casos, quiero decir, incluso cuando están definidos en la plantilla por defecto, y no solo cuando se añade un nuevo selector. Así que usar 'selector:add' no arreglará todos los casos.
¿Tienes alguna otra sugerencia? ¡Gracias!
Ocurre en todos los casos, quiero decir, incluso cuando están definidos en la plantilla por defecto, y no solo cuando se añade un nuevo selector. Así que usar selector:add no arreglará todos los casos.
'selector:add' se activa incluso cuando se añade una nueva clase desde el análisis sintáctico. Así que colócalo como un plugin, para que se adjunte antes de cargar la plantilla y cualquier nueva clase sea pasada por el oyente
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #1623
Mismo diseño para todos los bloques
Hola @artf, esto en realidad no es un error, pero me gustaría preguntar Si existe algo como el diseño global para cada bloque. por ejemplo,...
Issue #917
[PREGUNTA] Propiedades de estilo personalizado por elemento
¿Es posible tener una interfaz de propiedad personalizada por elemento? Por ejemplo, considera que quiero que el tamaño de fuente se muestr...
Issue #1179
[Pregunta] No se pueden cargar estilos guardados como !importante
¡Hola! Estoy intentando que todos los estilos de usuario tengan la bandera "!important", para evitar que otras clases existentes lo anulen...
Issue #871
[BUG] Opciones incorrectas de stylemanager la primera vez que se selecciona un componente/bloque
Hola, He notado el siguiente comportamiento con errores en el gestor de estilos:Usando una copia local de GrapesJS (ver 0.14.5). Probado en...
Plugins de pago que cumplen con este problema
Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.
Cargando recomendaciones de plugins de pago...
Consulta los plugins de código abierto de GrapesJS en GitHub O haz una búsqueda rápida en nuestro catálogo gratuito.
Explora plugins gratuitos →Los plugins premium incluyen soporte, actualizaciones regulares y funciones listas para producción — ahorrando días de trabajo de integración.
Explora plugins premium →Tutoriales relacionados
Guías detalladas sobre el mismo tema.
Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.