Esto podría ser algo así como se cumple js para Vuejs en Laravel, pero aquí está el problema.
Tengo el paquete javascript de GrapesJs usado como
<template> <div class="base"> <div id="gjs"> <h1>Hello World Component!</h1> </div> <!-- <div id="blocks"></div> --> </div> </template> <script> import grapesjs from "grapesjs"; import greapejspreset from "grapesjs-preset-webpage"; export default { data() { return { editor: null, }; }, mounted() { this.editor = grapesjs.init({ // Indicate where to init the editor. You can also pass an HTMLElement container: "#gjs", // Get the content for the canvas directly from the element // As an alternative we could use: `components: '<h1>Hello World Component!</h1>'`, fromElement: true, // Size of the editor height: "1000px", width: "auto", // Disable the storage manager for the moment storageManager: false, // Avoid any default panel cssIcons: null, plugins: [ // 'gjs-blocks-basic', greapejspreset, ], this.editor.command("open-blocks"); }); }, }; </script>Si tengo el mismo ejemplo fuera del archivo vue, el clic en los íconos funciona, pero en este caso, cuando hago clic en cualquiera de los íconos a continuación, no activa nada, es como si esos eventos estuvieran bloqueados por vuejs
¡¡¡Por favor ayuda!!!
Ok, después de investigar esto durante más de 24 horas, finalmente puedo solucionarlo.
Cualquiera que tenga un problema como este con GrapeJs, verifique que no sea Font Awesome js y css, porque si lo hace, sus intervalos serán reemplazados por svgs y al hacer clic están buscando intervalos.
Otro posible problema sería su init para fuente impresionante reemplazando span con svgs
Descubrí esto solo porque vi que svgs y span estaban ocultos en mi elemento de inspección