Issue #1013✓ ResueltoAbierto el 7 de abril de 2018por tommedemaReacciones 5

Permitir la edición de nodos de texto

Respuesta rápidapor mipierce3

Lee la respuesta completa abajo ↓

Pregunta

Problema: los nodos de texto que no tienen padre no son editables. Los nodos de texto que tienen un padre pero también un hermano (por ejemplo, un span), tampoco son editables. Es necesario que los nodos de texto en bruto soporten el soporte de los nodos.

Ejemplo que no funciona:

<div id="gjs">
  <div class="glyphicon glyphicon-asterisk"></div> Intenta editarme
</div>

El comportamiento esperado es que el nodo de texto 'Intentar editarme' pueda ser editado. El comportamiento real es que no se puede editar.

JSFiddle para reproducir: https://jsfiddle.net/szLp8h4n/107/

Respuestas (3)

👍 Muy útilmipierce4 de febrero de 2021
Esto es para arreglar texto que no está envuelto en un espacio para que el componente sea editable
                        const updateLooseTextComponents = function(components: [any]) {
                            para (componente const de componentes) {
                                si (component.type === 'textnode') {
                                    component.type = 'texto';
                                    component.tagName = 'span';
                                }
                                si (component.components) {
                                    updateLooseTextComponents(component.components);
                                }
                            }
                        };

updateLooseTextComponents(components);

const td = template.template_data como cualquiera;
                        td['gjs-components'] = JSON.stringify(components);
tommedema15 de abril de 2018

@artf '<gjs-text-node>' ¡parece una buena solución!

artf9 de abril de 2018

Conscientes y de acuerdo, la pregunta es simplemente '¿Cómo?'. Los nodos de texto no tienen la propiedad 'contentEditable', así que probablemente tendremos que intentar envolverlos todos dentro de '<span>'s (solo en su Vista) y ver cómo se gestiona todo

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.