Issue #2611💬 RespondidoAbierto el 29 de febrero de 2020por orionseyeReacciones 0

Arrastrar contenido externo a Canvas

Respuesta rápidapor orionseye

Estoy aclarando lo que quiero conseguir: Tengo unos 100+ fragmentos de html que uso en el constructor 'hecho a mano' actual y necesito migrarlos a GrapesJS. Para mi sorpresa, esto no parece un trabajo sencillo. Actualmente, con 2 funciones Ajax consigo lo que se necesita. a) ajax + scan_dir para listar todos los archi...

Lee la respuesta completa abajo ↓

Pregunta

Estoy intentando añadir funcionalidad de d&d desde un modal que lista un montón de archivos html (fragmentos de html)... Al lienzo del editor. Cada uno de ellos encierra el contenido con un '<section>'

Intenté usar 'canvas:dragdata' para permitir soltar en el lienzo

editor.on('canvas:dragdata', (dataTransfer, result) => {
          if(el.tagName == 'SECTION' && el.classList.contains('section')){
		result.content = { type: 'text/html'}
          }
		
});

Según entendí, esto es para extender los tipos de archivo que se pueden eliminar, GrapesJS soporta texto + imagen, ¿así que el enfoque anterior debería funcionar?

Mientras tanto, y después de trastear con 'Editor. DomComponents.addType' Estoy cambiando el alcance de mi problema... ver comentario abajo

Respuestas (2)

orionseye29 de febrero de 2020

Estoy aclarando lo que quiero conseguir: Tengo unos 100+ fragmentos de html que uso en el constructor 'hecho a mano' actual y necesito migrarlos a GrapesJS. Para mi sorpresa, esto no parece un trabajo sencillo. Actualmente, con 2 funciones Ajax consigo lo que se necesita. a) ajax + scan_dir para listar todos los archivos dentro de un directorio (archivo imagen y html) b) el usuario hace clic (o arrastra) la imagen (vista previa) en la div editable y Ajax recupera el archivo html correspondiente, colocándolo donde se desea. ¡Hecho!

¿Cómo puede GrapesJS solucionar esto?

Al menos, esperaba que el texto/html con etiquetas html5 estándar estuviera soportado para arrastrarse al canvas del editor, desde fuera del editor.

EDITO: El HTML en bruto se puede arrastrar al editor desde fuera, esto podría ser una solución alternativa según veo, sin tener que lidiar con componentes y bloques para cada necesidad

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.