Los enlaces duplicados se añaden usando rte
Alight: lo único malo es que quizá nunca sepamos cuál fue la solución. @artf - Creo que podemos cerrar este número.
Lee la respuesta completa abajo ↓Pregunta
Versión GrapesJS
- Confirmo que se debe usar la última versión de GrapesJS
¿Qué navegador usas?
Chrome
Enlace de demo reproducible
https://codepen.io/Harshsne/pen/xxoOyXO
Describe el bicho
¿Cómo reproducir el bicho?
- Añadir enlace a una palabra usando RTE, se añade el componente de enlace
- Ahora escribe algo después del componente enlace sin espacio y selecciona esa palabra de nuevo, añade enlace a ella.
- Después de añadirlo, haz clic fuera del cuadro de texto.
¿Cuál es el comportamiento esperado? Segundo: El enlace añadido debe rodear el primer enlace y el texto.
¿Cuál es el comportamiento actual? Se añade un componente de dos enlaces.
código var url = window.prompt('Introduce la URL para enlazar a:'); rte.insertHTML('<a class="link" href=${url}>${rte.selection()}</a>');
! edi11
Código de conducta
- Acepto seguir el Código de Conducta de este proyecto
Respuestas (4)
Alight: lo único malo es que quizá nunca sepamos cuál fue la solución.
@artf - Creo que podemos cerrar este número.
He estado trasteando bastante con esto y puedo reproducir el error en el Codepen que @yashvi2026 proporcionado. Mis pasos para reproducirme (la mayoría de las veces) son muy similares:
- Escribe dos palabras con numerosos espacios entre ellas en un cuadro de texto.
- Resalta la primera palabra haciendo doble clic o elige manualmente con el ratón
- Utilizar el RTE personalizado para añadir un enlace
- Haz clic fuera de la caja
- Haz doble clic atrás después del enlace en el texto existente
- Resalta la palabra después del enlace y extiende ese resaltado para incluir la primera letra del primer enlace usando el ratón
- Usar RTE para añadir otro enlace
- Haz clic fuera del cuadro de texto
Sin embargo, no pude reproducir esto en un entorno de desarrollo. Tras mucho intento y error, vi que el Codepen usa GrapesJS v0.22.1. Cambié eso a la v0.22.4 (la última versión que encontré Codepen) y ya no pude reproducirlo.
@yashvi2026 - si actualizas la versión en tu Codepen (o donde sea que veas esto), ¿puedes reproducir el error?
Sí. Después de actualizar a la última versión, este problema no ocurre.
Gracias por informar de esto, @yashvi2026.
Buena pregunta sobre los enlaces duplicados se añaden usando rte. El enfoque recomendado con ProseMirror es usar la API orientada a eventos.
Empieza aquí:
- Consulta la documentación de GrapesJS de tu módulo específico
- Busca el método del oyente de eventos 'on()'
- La mayoría de las operaciones se pueden realizar escuchando eventos del editor y de los componentes
Patrones comunes: '''javascript Prestad atención a los cambios editor.on('Change', () => console.log('Something Changed'));
Ciclo de vida de los componentes editor.on('component:mount', (c) => console.log('component ready', c)); editor.on('component:update', (c) => console.log('component updated', c));
**Si sigues atascado:**
- Compartir una reproducción mínima de CodeSandbox
- Incluye lo que ya has probado
- Menciona tu versión GrapesJS
- ¡La comunidad está aquí para ayudar!
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #5632
Añadir un cambio al desadministrador
Versión GrapesJS [X] Confirmo que se debe usar la última versión de GrapesJS ¿Qué navegador usas? Chrome v91 Enlace de demo reproducible ht...
Issue #6590
Poder acceder/eliminar/arrastrar los componentes bloqueados en layermanager
Versión GrapesJS [x] Confirmo que uso la última versión de GrapesJS ¿Qué navegador usas? Chrome Enlace de demo reproducible https://codepen...
Issue #6019
No se puede ocultar RTE en las últimas versiones
Versión GrapesJS [X] Confirmo que se debe usar la última versión de GrapesJS ¿Qué navegador usas? Chrome Enlace de demo reproducible https:...
Issue #4189
El componente se desactivaba cuando se cambiaban los ajustes (usando terceros por ejemplo React/Vue)
Versión GrapesJS [X] Confirmo que se debe usar la última versión de GrapesJS ¿Qué navegador usas? Chrome 98 Enlace de demo reproducible htt...
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.
Tutorial
How to Build a Production GrapesJS Editor: The Complete Walkthrough of Brief, Preset, Plugins, and Services
A complete walkthrough of building a production GrapesJS editor: how to choose a preset, pick plugins, and scope setup services without burning a sprint.
Tutorial
Big Updates: TinyMCE 8 and Placeholder 2.0 for GrapesJS
In May we shipped major updates to two of our most popular GrapesJS plugins — TinyMCE Inline Text Editor and Placeholder.
Tutorial
Find the Right GrapesJS Plugin in Seconds: Smarter Discovery Is Live
We're shipping a set of discovery upgrades. New label filters, a proper compatibility switch for GrapesJS vs Studio, one-click and a smarter sort bar.
Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.