Issue #2741💬 RespondidoAbierto el 28 de abril de 2020por JoshmamroudReacciones 0

¿Cómo envolver un componente con nodos de texto basados en un rasgo?

Respuesta rápidapor artf

Solo tienes que extender la función 'toHTML' del modelo de componentes para lograrlo (busca en issues si necesitas ejemplos).

Lee la respuesta completa abajo ↓

Pregunta

Hola @artf,

No estoy seguro de si esto aplica aquí, pero no consigo averiguar en la documentación cómo actualizar el modelo de componentes basándose en un rasgo.

La funcionalidad que intento conseguir es añadir un rasgo de texto a un componente llamado "condición" que aceptaría una expresión booleana. Si este rasgo tiene un valor, me gustaría envolver el componente con un nodo de texto así:

Ejemplo 1

El componente sin rasgo se renderizaría así: '''html

<p>Algo de contenido aquí</p> ``` ### Ejemplo 2: El componente con valor de rasgo se renderizaría así: ''' html {si TRAIT_VALUE } <p>Algo de contenido aquí</p> {endif} ```

Además, me gustaría excluir los nodos de texto envolvente del ejemplo 2 de la vista si es posible.

Llevo días trabajando en esto, pero siento que todo lo que intento es un truco. En tu opinión, ¿cuál es la mejor manera de hacerlo?

¡Gracias! Josh

Respuestas (2)

artf29 de abril de 2020

Solo tienes que extender la función 'toHTML' del modelo de componentes para lograrlo (busca en issues si necesitas ejemplos).

Joshmamroud29 de abril de 2020

Vale, le echaré un vistazo. ¡Gracias!

Preguntas y respuestas relacionadas

Continúa investigando con debates sobre temas similares.

Plugins de pago que cumplen con este problema

Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.

Ver todos los plugins

Cargando recomendaciones de plugins de pago...

Opción gratuita

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 →
Opción premium

Los plugins premium incluyen soporte, actualizaciones regulares y funciones listas para producción — ahorrando días de trabajo de integración.

Explora plugins premium →

Explorar categorías de plugins

Ve directamente a las páginas de categorías de plugins en el marketplace.