Issue #2359💬 RespondidoAbierto el 30 de octubre de 2019por sheldon5foreverReacciones 1

Modo absoluto, el estilo del componente desaparece al arrastrarse al lienzo

Respuesta rápidapor pouyamiralayi1

@artf ¡Sí! Esto no ocurre si elimino ''script''. El comportamiento está bien.

Lee la respuesta completa abajo ↓

Pregunta

Hola chicos, estoy trabajando con grapesjs, cuya versión es '0.15.8', y en modo 'absoluto', cuando arrastro un bloque al lienzo, noto que faltan los estilos de componentes.

Define el componente de la siguiente manera:

'''javascript domc.addType(lineChartRef, { model: defaultModel.extend({ Predeterminados: { ... defaultModel.prototype.defaults, nombre: lineChartRef, redimensionable: cierto, dmode: 'Absoluta', niñosSeleccionable: falso, resaltable: falso, Droppable: falso, estilo: { "ancho": "700px", "altura": "500px" }, rasgos: [...], ... script() { ... } } }) })

[Y encontré el código en Droppable aquí: /utils/Droppable.js@L78](https://github.com/artf/grapesjs/blob/master/src/utils/Droppable.js#L78)

'''javascript
const { izquierda, arriba, posición } = objetivo.getStyle();
comp.setStyle({ izquierda, arriba, posición });

los estilos de los componentes se reemplazan. ¿Debería usarse aquí 'addStyle' en lugar de 'setStyle'?

Respuestas (3)

pouyamiralayi31 de octubre de 2019

@artf ¡Sí! Esto no ocurre si elimino ''script''. El comportamiento está bien.

pouyamiralayi30 de octubre de 2019

Hola @sheldonwr este error al que te refieres no es reproducible en mi parte, aquí probé tu definición de tipo en la demo y funciona, por favor revisa el código de abajo y mira qué falta en tu lado:

domc.addType('lineChartRef', {
    modelo: {
      Predeterminados: {
      etiquetaNombre:'p',
        Contenido:'Un texto aleatorio',
        redimensionable: cierto,
        dmode: 'Absoluta',
        niñosSeleccionable: falso,
        resaltable: falso,
        Droppable: falso,
        estilo: { "fondo":'rojo',"ancho": "700px", "altura": "500px" },
        script() {
        }
     }
  }
})
bm.add("testLine",{
etiqueta:'lineChartRef',
  contenido:{
  tipo:'lineChartRef'
  }
})

El problema que observé con este componente fue que cuando lo muevo, deja de renderizar a los niños y se congela sin responder a ninguna interacción. Esto podría ser un error al especificar el modo de arrastre a nivel de componente en lugar de global. @artf ¡Salud!

artf31 de octubre de 2019

Vale, en realidad pasa algo raro cuando un componente tiene la propiedad 'script' definida... Gracias por el informe, chicos, lo miraré. ¿Puedes confirmar que sin 'script' se comporta correctamente?

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 →

Tutoriales relacionados

Guías detalladas sobre el mismo tema.

Todos los tutoriales →

Explorar categorías de plugins

Ve directamente a las páginas de categorías de plugins en el marketplace.