Añadir bibliotecas externas tras arrastrar un bloque personalizado
Hola, Si no encontraste la respuesta aquí, puedes contactar con Devfuture Team: https://devfuture.pro/contact/ Nos especializamos en GrapesJS.
Lee la respuesta completa abajo ↓Pregunta
Hola,
Estoy personalizando GrapesJS creando componentes/bloques que mis usuarios pueden arrastrar al lienzo. Varios de estos bloques dependen de librerías externas como Bootstrap y FontAwesome... ¿Hay alguna forma de comprobar si las dependencias necesarias están incluidas en una página y, si no, añadirlas a la página?
Esto es lo que ya sé. Espero que alguien pueda ayudarme a rellenar los huecos de mi comprensión de GrapesJS o indicarme una dirección útil.
-
Soy consciente de que puedo acceder a arrastrar y soltar eventos cuando un usuario coloca un bloque en una página. Sin embargo, por alguna razón solo puedo acceder al evento 'bloquear:arrastrar:parar'. Y si intento añadir mis dependencias de biblioteca a la página en este punto, acabo borrando todo el contenido de mi página. Obviamente estoy intentando añadir mis dependencias demasiado pronto y necesito esperar a que el bloque se renderice en la página antes de operar sobre ella. ¿Existe alguna forma conocida de hacerlo? ¿O sería algo único de mi proyecto GrapesJS?
-
También sé que puedes añadir dependencias de scripts para bloques. ¿Hay alguna forma de aprovechar eso?
Si no puedo añadir el marcado necesario para incluir mis dependencias cuando un usuario arrastra un bloque en una página, ¿hay alguna forma de notificar al usuario "Oye, necesitas incluir estas dependencias..."?
Gracias por vuestra atención.
Respuestas (3)
Hola,
Si no encontraste la respuesta aquí, puedes contactar con Devfuture Team: https://devfuture.pro/contact/
Nos especializamos en GrapesJS.
@stljeff1 la forma correcta es usar scripts relacionados con componentes que comprueban si la dependencia existe
@artf ¿Puedo hacer eso con archivos CSS?
Aun así, conseguí "resolver" mi problema creando un tipo personalizado para los bloques con algún tipo de dependencia (CSS o JS). Este tipo personalizado amplía la vista predeterminada añadiendo un callback personalizado cuando se colocan bloques de ese tipo en el lienzo. Cuando se activa esta devolución de llamada, abro un cuadro de diálogo notificando al usuario las dependencias, y si el usuario acepta, añado las dependencias a la página.
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #1485
¿Cómo evitar estilizar componentes html?
Estoy intentando crear algunas plantillas que no deberían ser editables ni estilizables. Así que cuando arrastre mis bloques deberían mante...
Issue #1126
[Pregunta] ¿Cómo añadir un atributo personalizado en un bloque a través del Administrador de bloques?
Hola, Tengo un bloque personalizado en el que hay un atributo personalizado '@call-method="searchProduct"'. Pero cuando uso esto directamen...
Issue #1420
Personalizando el bloque (bloque de sección) mientras lo arrastras
Hola, he visto que había dos bloques separados para añadir 'secciones' y 'columnas'. Tenemos un flujo como cuando arrastramos una sección a...
Issue #3337
Pregunta: Usa las flechas para mover bloques en el lienzo configurado en modo de posicionamiento absoluto
Hola, estoy creando una solución para que los estudiantes cuenten sus experiencias en el instituto como diapositivas hechas desde el editor...
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 →Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.