Append no funciona de forma consistente
El componente de texto está compuesto por 'components', contenedor y 'content' (impreso después de components), así que cuando usas 'append' en realidad añade el nodo, pero lo ves arriba ya que el 'content' aparece abajo. Necesitamos el contenedor de 'componentes' por muchas razones (aunque en algunos casos ni siquier...
Lee la respuesta completa abajo ↓Pregunta
¿Estás usando la última versión (las versiones antiguas NO están soportadas)? Sí ¿Te enfrentas al error con tu copia local de GrapesJS o con la demo actual? Demo local y actual
Estoy usando 'editor.getSelected().append()' para añadir texto al componente seleccionado actualmente en el editor. Esto parece funcionar de forma consistente al mirar el código HTML en el editor de código, sin embargo, en la vista el texto no siempre se añade, sino que, en la mayoría de los casos, aparece como prependido. Sin embargo, tras actualizar la página, el texto se muestra como se ha añadido al final del componente. Probado en la versión actual de Firefox y Chrome.
Esto es lo que introduje en las herramientas de desarrollo y el resultado a la izquierda. El marco rojo marca los dos casos en los que la vista muestra el texto como prependido (el mensaje de error en la consola no tiene nada que ver con este ticket, apareció después de hacer las pruebas).
! añade
La misma página en el editor de código
Supongo que este no es el comportamiento deseado de añadir o ¿tengo que actualizar la vista de alguna manera después de añadir el texto?
¡Gracias por tu ayuda, aprecio tu trabajo!
Respuestas (1)
El componente de texto está compuesto por 'components', contenedor y 'content' (impreso después de components), así que cuando usas 'append' en realidad añade el nodo, pero lo ves arriba ya que el 'content' aparece abajo. Necesitamos el contenedor de 'componentes' por muchas razones (aunque en algunos casos ni siquiera se use). Técnicamente no puedes eliminar otros componentes dentro de un Texto (usando el editor), así que creo que la solución debería ser extender el método de 'anexar' (en el modelo de Texto) y evitar añadirlo por completo porque sería incorrecto por definición (o quizá comprobar la propiedad 'droppable' en el modelo principal de Componentes). Sinceramente, no lo veo como un problema real, más bien como un uso incorrecto de la API en el componente de texto, pero estaría encantado de fusionar una PR
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #2722
[BUG] Resaltado y barra de herramientas mal posicionados en el desplazamiento exterior
¿Estás usando la última versión (las versiones antiguas NO están soportadas)? Sí ¿Te enfrentas al error con tu copia local de GrapesJS o co...
Issue #2683
[BUG] Al cancelar Colorpicker, se estableció un valor incorrecto para el componente
¿Estás usando la última versión (las versiones antiguas NO están soportadas)? Sí.¿Te enfrentas al error con tu copia local de GrapesJS o co...
Issue #1941
[BUG]: Al arrastrar un bloque sobre el lienzo, se añade JS en script, antes de soltar el bloque.
Estás enviando un BUG ¿Estás usando la última versión (las versiones antiguas NO están soportadas)? v0.14.57 ¿Te enfrentas al error con tu...
Issue #1996
Primero móvil: Problema con el orden de consultas de medios
¿Estás usando la última versión (las versiones anteriores NO están soportadas)?0.14.61¿Te enfrentas al problema con tu copia local de Grape...
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 →Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.