Issue #2205💬 RespondidoAbierto el 20 de agosto de 2019por inaLarReacciones 2

Componente de texto convertido a Box tras guardar

Respuesta rápidapor inaLar1

¡Hola! Esta es información muy útil: sobre acceder al modelo de esta manera en lugar del DOM. Lo exploraré. Todavía no entiendo por qué la clase seleccionada por gjs-comp-select se almacena en el innerHTML precisamente cuando suelto el componente personalizado dentro de un componente de texto. Quizá esto sea solo un c...

Lee la respuesta completa abajo ↓

Pregunta

Tengo un componente personalizado cuando se suelta dentro de un componente de texto (estoy usando un componente de texto personalizado que extiende el componente de texto original); después de guardar y recargar el HTML/CSS estoy experimentando el mismo problema: el componente de texto se convierte en un cajón. Yo uso un atributo personalizado, pero sea cual sea el atributo, el tipo del componente se convierte de Texto a Predeterminado. P.D.: El componente personalizado se puede editar con doble clic.

Antes de guardar:

'<div data-gjs-type="text" data-highlightable="1" data-text-extended="Text">Insertar <span data-gjs-type="custom-type" contenteditable="false" data-gjs-textable="true" >Prueba</span>personalizada de tu texto aquí</div>'

Al cargar contenido ya guardado:

'<div data-gjs-type="default" data-highlightable="1" data-text-extended="Text">Insertar <span data-gjs-type="custom-type" contenteditable="false" data-gjs-textable="true" >Prueba</span>personalizada de tu texto aquí</div>'

Cuestiones relacionadas: https://github.com/artf/grapesjs/issues/761

Respuestas (3)

inaLar22 de agosto de 2019

¡Hola! Esta es información muy útil: sobre acceder al modelo de esta manera en lugar del DOM. Lo exploraré. Todavía no entiendo por qué la clase seleccionada por gjs-comp-select se almacena en el innerHTML precisamente cuando suelto el componente personalizado dentro de un componente de texto. Quizá esto sea solo un comportamiento descubierto.

También estoy explorando la opción de eliminar el atributo de clase (gjs-comp-selected) del componente personalizado dentro de su modelo, onRender(). Pero aún así determinar el modelo de padre o hijo es un terreno nuevo para mí :)

inaLar22 de agosto de 2019

@pouyamiralayi, sí, he hecho exactamente lo mismo y funciona, pero también he conseguido usar tagName (div, p, ... ) en el isComponent de un componente de texto extendido y esto también funciona en mi caso. Voy a cerrar la pregunta ahora.

¡Muchas gracias por todo el interior!

¡Salud

pouyamiralayi20 de agosto de 2019

¿Defines tu tipo personalizado dentro de un plugin?

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.