No se pueden añadir espacios al componente de botón extendido basándose en el componente de texto.
Parece que el espacio activa el evento de 'clic' en Chrome. La solución parece ser añadir el preventDefault en 'keypress' https://stackoverflow.com/questions/22104860/chrome-firing-onclick-when-space-typed-in-contenteditable-button PD: Evita ampliar la vista de esa manera. Por defecto, cuando usas 'extender' de algún...
Lee la respuesta completa abajo ↓Pregunta
Hola a todos, Antes que nada, me gustaría expresar mi agradecimiento por esta increíble herramienta. Tengo un componente de botón extendido basado en el componente de texto para poder editar el contenido del botón manualmente sin usar rasgos. El código para el componente de botón extendido es este: VAR Comps = Editor. DomComponents; var defaultType4 = comps.getType('text'); editor. DomComponents.addType('button', { modelo:{ Predeterminados: { etiquetaNombre: 'botón', clases: ['.pointer'], //Añadir puntero de clic al pasar el cursor, }, }, extiende: 'texto', isComponent: function (el) { if (el...
Respuestas (2)
Parece que el espacio activa el evento de 'clic' en Chrome. La solución parece ser añadir el preventDefault en 'keypress' https://stackoverflow.com/questions/22104860/chrome-firing-onclick-when-space-typed-in-contenteditable-button PD: Evita ampliar la vista de esa manera. Por defecto, cuando usas...
Gracias por informar de esto, @christosapos. Buena pregunta sobre No se pueden añadir espacios a un componente de botón extendido basándose en un componente de texto.. El enfoque recomendado con Componentes es utilizar la API orientada a eventos. Empieza aquí: Consulta la documentación de GrapesJS...
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #3287
Diseño de envoltorio
Antes que nada, enhorabuena @artf por este increíble proyecto 💯 Actualmente estoy trabajando en un proyecto y quería preguntar si puedo ed...
Issue #3399
Convertir JSON a HTML lado servidor
Así que, antes que nada, gracias @artf por este increíble proyecto. Tengo una pregunta: ¿Es posible convertir fácilmente el component-JSON...
Issue #3512
Los elementos hijos no se pueden arrastrar, se pueden soltar y se pueden resaltar. también el CSS de todos los elementos hijos que no se insertan en la sección de estilo mientras se desarrolla un componente banner en un plugin
Hola @artf, Estoy intentando desarrollar un plugin sencillo para banners que incluya un encabezado, un subtítulo y un enlace. y cada elemen...
Issue #3541
¿Cuál es la forma idiomática de añadir y eliminar clases de los componentes?
Hola 👋 ¡Me encanta el editor! Estamos usando rasgos para modificar las clases que tiene un componente, pero eso resulta un poco forzado po...
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
Vanilla GrapesJS vs GrapesJS With Plugins: What You Actually Get Out of the Box (2026)
New to GrapesJS? See exactly what the stock editor gives you, where it falls short, and which plugins close the gaps — a beginner-friendly 2026 comparison
Tutorial
Lighthouse for GrapesJS: Audit Accessibility and SEO Without Leaving the Editor
Live WCAG 2.1/2.2 accessibility auditor + SEO manager for GrapesJS. Every finding is bound to the exact component — click to select, then one-click fix.
Tutorial
GrapesJS DevTools: A Developer Panel Inside Your Editor
If you've ever debugged GrapesJS with console.log(editor.getSelected()) and a dozen throwaway event listeners — this post is for you.
Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.