Cómo añadir un botón personalizado con un comando personalizado en el panel predeterminado de grapesjs
Usa 'editor'. Panels.getPanels()' para obtener todos los paneles disponibles y luego usar el método addButtons que se muestra a continuación. Aquí 'options' es el nombre del panel 'editor. Panels.addButton('options', [ { id: 'guardar', claseNombre: 'fa fa-floppy-o icon-blank', comando: function(editor1, sender) { aler...
Lee la respuesta completa abajo ↓Pregunta
He integrado grapesjs con angular6. Y me aparece un panel por defecto con una caja de selección en la parte superior de la pantalla; Quiero un botón personalizado con mi propio comando personalizado en el panel predeterminado. Quiero añadir un botón que parece el que aparece abajo, marcado con color rojo.
! 6666666
Quiero que cuando haga clic en el botón, debería aparecer una caja de alerta en pantalla con un mensaje de Hello World. Por favor, dime cómo puedo añadir mi botón personalizado en el panel predeterminado
Respuestas (3)
Usa 'editor'. Panels.getPanels()' para obtener todos los paneles disponibles y luego usar el método addButtons que se muestra a continuación. Aquí 'options' es el nombre del panel
'editor. Panels.addButton('options', [ { id: 'guardar', claseNombre: 'fa fa-floppy-o icon-blank', comando: function(editor1, sender) { alerta ('Hola Mundo') }, atributos: { título: 'Guardar plantilla' } }, ]);`
También tuve problemas con eso cuando intenté abrir el botón del panel. Así que usé la siguiente manera: ` editor. Panels.addButton('#target panel id#',
{ Id: 'botón de alerta', NombreClase: 'botón de alerta btn', etiqueta: 'Haz clic en mi trasero', command(editor) { alert('Hello World'); } Activo: Verdadero }); ` Sin embargo, el panel y el botón se mostraban.
Se activa y necesita usar el método 'render' para volver a renderizar el objeto del gestor de paneles. No encuentro información sobre ello en la documentación. Así que decidí esta nota aquí:
editor. Panels.render();
Después de eso, se muestran el botón y el panel.
Esto está bien documentado en https://grapesjs.com/docs/getting-started.html#panels-buttons. Tienes dos métodos para añadir un panel con botones: (1) Al inicializar GrapesJS, (2) Después de inicializar GrapesJS con addPanel.
Ten en cuenta que esto es para un panel que has definido con '<div id='basic-actions'></div>'.
UvasJS.init()
this.editor = grapesjs.init({
Contenedor: '#gjs',
fromElement: false,/* https://github.com/artf/grapesjs#usage */
addBasicStyle: cierto,
Altura: '800px',
Ancho: 'Auto',
Paneles: {
id: 'Acciones-básicas',
EL: '.panel__basic-acciones',
botones: [
{
Id: 'botón de alerta',
NombreClase: 'botón de alerta btn',
etiqueta: 'Haz clic en mi trasero',
command(editor) { alert('Hello World'); }
}
]
},
...});
Después de que GrapesJS se inicializara
editor. Panels.addPanel({
id: 'Acciones-básicas',
EL: '.panel__basic-acciones',
botones: [
{
Id: 'botón de alerta',
NombreClase: 'botón de alerta btn',
etiqueta: 'Haz clic en mi trasero',
command(editor) { alert('Hello World'); }
}
]
});
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #417
Añadir el botón de Configuración a un componente personalizado.
Hola, ¿Cómo puedo crear una configuración o puedes editar, por ejemplo, un botón de edición para mi componente personalizado? Con la cuarta...
Issue #1031
[Pregunta] Iconos personalizados
Quiero añadir un icono personalizado al panel grapesjs en la parte superior de la página del editor. ¿Es posible hacer esto con cualquier S...
Issue #2129
[Pregunta] cómo añadir un botón dentro del modal por defecto y capturar su evento de clic
Quiero un formulario dentro de un modal (usando el modal por defecto), al hacer clic en el botón de enviar hacer una llamada ajax. He cread...
Issue #1780
Cómo cambiar el desplegable extra para el rasgo de cambio de enlace
Hola @artf, Quiero dar una funcionalidad más al usuario, como que el usuario pueda cambiar cualquier enlace con el desplegable de enlaces p...
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
Ship to Production Faster: What’s New in GrapesJS Shadcn
Supercharge your page builder! GrapesJS Shadcn adds live drag previews, rich text / commands, dynamic data, and canvas presets to ship to prod faster.
Tutorial
Preset DevFuture 2.0 — New Update Released
Preset continues evolving as a clean, production-ready starting point for building visual editors powered by GrapesJS
Tutorial
How Much Can You Earn on GJS.Market in a Month?
Discover how DevFuture earns €2,000+ monthly on GJS.Market — and learn how you can start building and selling your own GrapesJS plugins.
Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.