El contenido de texto no siempre se puede editar
Gracias, Daniel, estoy de acuerdo contigo y me encargaré de tus sugerencias. Solo quiero señalar, en el cuarto caso, que también puedes indicar explícitamente al editor dónde es un componente de texto '''html <div data-gjs-type="text"> Un nodo de texto <div>Texto a editar</div> <ul>...</ul> </div> ```
Lee la respuesta completa abajo ↓Pregunta
Hola @artf,
He notado que si añado un componente que contiene una combinación de texto y una <a>etiqueta '', el texto no es editable como suele ser. Si sustituyo la etiqueta '<a>' por una '<span>', entonces puedo editar el texto sin problema. Aquí hay algo para ilustrar a qué me refiero (fíjate en las últimas dos líneas de código para alternar entre un ejemplo roto y uno funcional): https://jsfiddle.net/wycrpkay/3/. Esto puede estar ocurriendo con etiquetas distintas de '<a>', pero esa es la única que he notado que es problemática hasta ahora.
Me parece que el componente se analiza como el tipo de componente por defecto en lugar de un componente de texto, pero no consigo entender por qué la presencia de la <a>etiqueta '' (y no de otras etiquetas) podría causar esto. He visto que ComponentText.js no tiene una función 'isComponent', así que no entiendo muy bien cómo se hace esa distinción. Voy a seguir investigando esto, pero agradecería cualquier opinión que tengáis sobre por qué está pasando esto.
¡Gracias!
EDITO: He encontrado 'ParserHtml.parseNode()'... Añadir 'comp.type != 'link'' a la sentencia if que empieza en la línea 183 parece hacer lo que quiero:
if(comp.type != 'text' & & comp.type != 'textnode' && comp.type != 'enlace' & & c.textTags.indexOf(comp.tagName) < 0 ){
Aunque no me siento muy bien con ese cambio. Siento que quiero que esas comprobaciones solo vean si todos los hijos son editables ('comp.get("editable")') en lugar de todas las comprobaciones de texto/textnode/enlace, pero eso no parece posible aquí ya que solo tenemos objetos componentes simples (parece que es simplemente lo que se devuelve desde las funciones 'isComponent'). No sé qué hacer...
Respuestas (3)
Gracias, Daniel, estoy de acuerdo contigo y me encargaré de tus sugerencias. Solo quiero señalar, en el cuarto caso, que también puedes indicar explícitamente al editor dónde es un componente de texto '''html
<div data-gjs-type="text"> Un nodo de texto <div>Texto a editar</div> <ul>...</ul> </div> ```Debería arreglarse https://github.com/artf/grapesjs/releases/tag/v0.12.50
Yo también me estoy encontrando con esto.
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #1072
No se puede añadir una nueva regla CSS si un elemento que la está usando no está presente en el html
Hola, estoy usando la última versión y tengo el problema tal y como se describe en el título. Estoy editando html y css por separado. He no...
Issue #511
No se puede editar el contenido después de actualizarlo mediante la API del gestor de bloques
Hola @artf perdón por mi último problema, debo crear un nuevo problema, mi problema tiene un error como este EDITO: perdón, acabo de arregl...
Issue #1346
[SOLICITUD DE FUNCIÓN] Unidad por defecto de vista deslizante de propiedades
Hola @artf, Creo que el componente deslizante sería útil desde la perspectiva de la experiencia de usuario para la interacción del usuario...
Issue #1560
Aplica cambios en el estilo de mager a una clase
Hola @artf, he notado que cuando uso el gestor de estilos aplica el estilo a toda la clase del componente seleccionado Por ejemplo, si teng...
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.