Permitir importar módulos javascript
Genial, me gusta, para quien quiera hacer una PR, el código para actualizar está aquí: https://github.com/artf/grapesjs/blob/aee18dcf0602e5d56e7670deb8d4ffbf31c73008/src/canvas/view/CanvasView.js#L140-L161
Lee la respuesta completa abajo ↓Pregunta
Al usar Ionic StencilJS, los componentes se importan usando el nuevo soporte para módulos:
<script type="module" src="http://localhost:3333/build/grapejspoc.esm.js"></script>
<script nomodule="" src="http://localhost:3333/build/grapejspoc.js"></script>
En '{canvas: scripts: []}' solo puedo cargar scripts externos por su URL. Para cubrir este caso, podríamos importar módulos así:
lienzo: {
guiones: [
{ src: "https://pagecdn.io/lib/jquery/3.4.1/jquery.min.js", integrity: "sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=", crossorigin="anonymous" },
{ tipo: "módulo", src: "https://bla/bla.esm.js"},
{ nomodule: "", src: "https://bla/bla.js" }
]
}
El resultado final dentro del lienzo sería:
<script src="https://pagecdn.io/lib/jquery/3.4.1/jquery.min.js" integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous"></script>
<script type="module" src="http://bla/bla.esm.js"></script>
<script nomodule="" src="http://bla/bla.js"></script>
Fíjate que esto también cubriría el caso cuando queremos usar integrity o crossorigin en <script>etiquetas '' y, por supuesto, insertar una cadena de URL seguiría funcionando tal y como está hoy.
Respuestas (3)
Genial, me gusta, para quien quiera hacer una PR, el código para actualizar está aquí: https://github.com/artf/grapesjs/blob/aee18dcf0602e5d56e7670deb8d4ffbf31c73008/src/canvas/view/CanvasView.js#L140-L161
Hola, ¿puedo empezar desde tu código para iniciar el código de Init Grapesjs no en el archivo html sino en un archivo js separado? Gracias
@artf parece que esta función ya ha sido implementada. Hay un pequeño problema donde el tipo por defecto se pone en 'texto/javascript'. Para HTML 5 debería omitirse, pero no debería causar problemas si los hay.
¿Debería cerrarse este asunto?
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #1615
[Funcionalidad] soporte para editar atributo de solicitud de credenciales en Almacenamiento remoto
Las opciones de credenciales están obligadas a ser 'incluidas' en Almacenamiento Remoto. https://github.com/artf/grapesjs/blob/master/src/s...
Issue #2355
[requisición] ¿Soporte para reglas en modo diseñador?
Sé que hay un hilo antiguo que sugiere el soporte para los Gobernantes (pero ya está cerrado). Solo me pregunto si hay alguna posibilidad d...
Issue #2044
El desarrollo de npm en un servidor local no funcionó
Hice el procedimiento para iniciar el servidor local usando la rama 'dev' tal y como se describe en README, funcionó en la consola, pero fa...
Issue #2656
[BUG] Posición incorrecta de la barra de herramientas al duplicar un componente hijo
Hola, Puedes consultar este ejemplo: https://codepen.io/abozhinov/pen/XWbqjEJ Pasos para reproducir el problema:Si existen componentes, eli...
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.