Issue #2514✓ ResueltoAbierto el 19 de enero de 2020por ghostReacciones 14

Cómo cambiar el dispositivo de un desplegable a un icono

Respuesta rápidapor Phil-B13

Los ejemplos anteriores no me funcionaron en la versión 0.17.28 (supongo que la API ha cambiado). Esto funcionó:

Lee la respuesta completa abajo ↓

Pregunta

Estoy intentando reemplazar el desplegable por un icono para los dispositivos siguiendo el ejemplo de la plantilla del boletín, pero no funciona.

Comandos personalizados
    Desactiva los dispositivos por defecto, selecciona y crea uno nuevo
    Sea pnm = editor. Paneles;
    editor.getConfig().showDevices = false;
    let devicePanel = pnm.addPanel({
        ID: 'Dispositivos-C'
    });
    let deviceBtns = devicePanel.get('buttons');
    devicePanel.get('buttons').add([{
        id: 'deviceDesktop',
        comando: 'establecer-dispositivo-escritorio',
        NombreClase: 'fa fa-escritorio',
        atributos: {título: 'Escritorio'},
        activo: 1,
    }, {
        id: 'tabletDevice',
        comando: 'establecer-dispositivo-tableta',
        claseNombre: 'fa fa-tablet',
        atributos: {título:'Tablet'},
    }, {
        id: 'deviceMobile',
        comando: 'establecer-dispositivo-móvil',
        claseNombre: 'fa fa-mobile',
        atributos: {título: 'Móvil'},
    }])

Respuestas (3)

👍 Muy útilPhil-B3 de noviembre de 2021

Los ejemplos anteriores no me funcionaron en la versión 0.17.28 (supongo que la API ha cambiado). Esto funcionó:

    editor.getConfig().showDevices = 0;

editor. Panels.addPanel({
        ID: 'Dispositivos', Botones: [
            { id: "set-device-desktop", comando: function (e) { return e.setDevice("Desktop") }, className: "fa fa-desktop", active: 1 },
            { id: "set-device-tablet", comando: function (e) { return e.setDevice("Tablet") }, className: "fa fa-tablet" },
            { id: "set-device-mobile", comando: function (e) { return e.setDevice("Mobile portrait") }, className: "fa fa-mobile" }
        ]
    });
umerrinayat31 de enero de 2020

@petervandeput https://github.com/artf/grapesjs/issues/1507#issuecomment-496280105 Después de uvapesjs init. '''/ Añadir iconos de dispositivo en la barra de paneles editor.getConfig().showDevices = 0; editor. Panels.addPanel({ id: "devices-c" }).get("buttons").add([ { id: "set-device-desktop", comando: function(e) { return e.setDevice("Escritorio") }, className: "fa fa-desktop", active: 1}, { id: "set-device-tablet", comando: function(e) { return e.setDevice("Tablet") }, className: "fa fa-tablet" }, { id: "set-device-mobile", comando: function(e) { return e.setDevice("Mobile portrait") }, className: "fa fa-mobile" }, ]);

El panel debería volver a renderizarse de lo contrario El botón nuevo no aparecerá en el panel del dispositivo editor. Panels.render();

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.