Issue #2400✓ ResueltoAbierto el 12 de noviembre de 2019por ned-kellyReacciones 4

¿Es posible 'desactivar' un botón añadido dentro del panel desde una función fuera de GJS?

Respuesta rápidapor pouyamiralayi2

Hola @ned-kelly, prueba esto: ¡Salud!

Lee la respuesta completa abajo ↓

Pregunta

Hola a todos,

Primero, un proyecto increíble, me ha gustado mucho extender GJS para que funcione con nuestro caso de uso, y estoy emocionado por lo que nos espera al ver algunos de los problemas/funciones en desarrollo...

Así que estoy usando GJS con botones personalizados añadidos en el panel mediante 'addButton' (así):

    editor. Panels.addButton('options', [
        {
            id: 'Marcas de cultivo',
            claseNombre: 'fa fa-cu-mira icono-blank',
            Activable: Cierto,
            activo: falso,
            Orden: {
                run: function (e) {
                    toggleCropMarkers(true);
                },
                parada: función (e) {
                    toggleCropMarkers(falso);
                }
            },
            atributos: {
                título: 'Alternar marcadores de cultivo'
            }
        },
    ]);

Ahora todo funciona como se espera cuando alternas o desactivas el botón; sin embargo, quiero ejecutar la función 'toggleCropMarkers()', que se llama cuando el botón está desactivado, fuera del editor (en este caso llamo a la función cuando se carga el documento)—, y me gustaría configurar manualmente el estado del botón a 'toggled'...

He intentado: 'editor. Panels.getButton('options', 'cropmarks').changed.active = true', así como '.attributes.active = true' sin suerte y me preguntaba si hay alguna forma sugerida de 'activar' el estado de un botón desde fuera del editor.

Espero que esto tenga sentido, por favor dime si no me entiendo y subiré una muestra.

Saludos,

Respuestas (2)

👍 Muy útilpouyamiralayi12 de noviembre de 2019

Hola @ned-kelly, prueba esto:

 const cropBtn = editor. Panels.getButton('opciones', 'recortes');
 cropBtn.set('active', 1)

¡Salud!

ned-kelly13 de noviembre de 2019

@pouyamiralayi, eres increíble — perdón por hacer una pregunta que parece sencilla — ¡no he encontrado ningún problema anterior en GitHub ni comentarios sobre esto en la documentación!

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.