Hola, Estoy usando el modal con algunos comandos. He notado que al llamar a 'modal.setContent( ... )' lo que estuviera en el modal antes se traslada a un div oculto con la clase 'gjs-mdl-collector'. ¿Hay alguna forma de destruir el contenido en Close? ¿O debería simplemente eliminar el contenido '.innerHTML('')' antes...
artf
Si no necesitas esas referencias, puedes limpiarlas manualmente
Hola, tengo una pregunta: cuando creo un componente de tipo personalizado desde el editor, ¿cuál sería el siguiente paso para mostrar ese componente en mi aplicación? Actualmente estoy guardando los datos de los componentes en Firebase con el plugin firestore y los atributos almacenados en el objeto son los siguientes...
Ju99ernaut
'onRender' simplemente especifica qué debe ocurrir cuando colocas con éxito un componente en el lienzo, mientras que 'script' es código que se generará en tu html dentro de las etiquetas 'script'. Algo así como: '''html <script> //... var...
Ju99ernaut
Creo que en un entorno de producción solo necesitas el código html y css generado por 'grapesjs'.
robertraf
Entiendo esa parte, pero si quiero renderizar el componente que he creado no funciona. Lo explicaré un poco, he creado un tipo de componente que renderiza datos desde un endpoint, pero si uso código html y css no funciona. Tipo de componen...
Hola, Actualmente estoy intentando iniciar el editor "fromElement", configurando el siguiente html dentro del contenedor: Pero cuando se ejecuta, grapesjs crea componentes dentro de la <p>etiqueta '' incluso después de establecer el atributo 'data-gjs-type' como 'text'. Lo que intento es presentar el párrafo a editar...
alesub
@artf solo para aclarar: este error se basa en el comportamiento esperado que describiste en este comentario: https://github.com/artf/grapesjs/issues/576#issuecomment-348550694 Y cómo se comportan los divs con texto en la página de demostr...
alesub
Hola, ¿alguna novedad revisando este problema? Lo que me ha perdido es que esto no ocurre en la página de demostración, cualquier texto en negrita o cursiva no se convierte en un componente separado tras guardar o recargar. Cualquier aport...
artf
Cerrando este caso porque ahora este es el comportamiento por defecto. También existe la posibilidad de personalizar el comportamiento mediante la opción 'disableTextInnerChilds' añadida desde https://github.com/GrapesJS/grapesjs/releases/...
Hola a todos Tengo un problema relacionado con Alert que aparecía cuando intentaba cerrar sesión en la página. En realidad no sé si es un bug, o si es otra cosa. He leído documentación, pero aún no he recibido respuesta. Si me ayudas, te lo agradeceré mucho. El mensaje de alerta es "Los cambios que has hecho pueden no...
Ju99ernaut
Supongo que la alerta sigue apareciendo incluso si tienes el almacenamiento configurado. Añade esto a tu inicialización: '''js var editor = grapesjs.init({ //... Mostrar una alerta antes de descargar la página con los cambios no guardados...
Ju99ernaut
Probablemente sea porque no tienes ningún 'almacenamiento' configurado
pjdevries
También pensé en 'almacenamiento' y estaba a punto de montar un almacenamiento ficticio, esperando que así se solucionara el problema. El 'noticeOnUnload: 0' funciona de maravilla, así que no hace falta. Muchas gracias.
@artf Quiero usar el modo de traducción y absoluto Pero hay algunos problemas 1- Ya no es posible dejar caerCuando configuro las cajas en los dispositivos (móvil y tablet), si la pantalla es un poco más grande o más pequeña que el tamaño del dispositivo, puede haber un problema con la salida.
artf
Usar el modo absoluto, por diseño, es más difícil de manejar con páginas responsivas
DescripciónEl error se reproduce en la demo actual ¿Qué pasa? Al cambiar rápidamente la selección entre controles , el editor se queda atascado . Pasos para reproducir en la demo Seleccionar un control y mover rápidamente la selección a otro. Haz esto varias veces y el editor se quedará atascado. ! ezgif com-vídeo-a-g...
artf
Gracias por el informe@meyerco probablemente encontré el problema principal, debería solucionarse en la próxima versión
Estoy investigando cómo crear una plantilla con expresiones del lado del servidor que repita un componente ('foreach') o lo elimine completamente ('if'). Mi backend analiza plantillas con mvel. Lo que estoy pensando es añadir un par de ajustes a todos o algunos elementos seleccionados. Por ejemplo, a una '<div>' de un...
Ju99ernaut
Para rodear un elemento, mira 'toHtml', puedes buscarlo en los archivos para ver ejemplos. En cualquier caso, no creo que sea buena idea reemplazar el tipo de componente por defecto, sugeriría crear un nuevo componente que extienda el tipo...
fedd
La documentación de los componentes podría ser útil He escrito mi código basándome en este artículo. Dice,Actualizar los tipos de componentes es bastante sencillo, veamos cómo: .... La propiedad de 'defaults' se maneja de forma diferente y...
artf
@fedd puedes añadir tus nuevos rasgos en la función 'model.init'
DescripciónEl error se reproduce en la demo actual Comportamiento esperado Cuando se elimina una descripción introductora, se elimina su css ¿Qué pasa en cambio? Cuando se elimina una descripción emergente, su css no se elimina Pasos para reproducir en la demo Despejar el lienzo Arrastrar una descripción emergente Eli...
artf
Sí, creo que tienes razón, probablemente cambiando '''js se basa en la vista const len = dc.getWrapper().find('[data-gjs-type="${type}"]').length; Podría solucionar el problema, ¿te gustaría comprobar y crear un registro permanente? :)
meyerco
@artf ¿Quizá este código para mantener el código genérico? '''js se basa en el modelo const len = dc.getWrapper().findType(type).length; ```
artf
@meyerco 😅 sí, claro, perdona, era un copia-pegado de mi intento
Actualmente estoy trabajando en una aplicación web para la que integramos este proyecto como editor de interfaz gráfica para personalizar los entornos. Nuestros componentes GUI se cargan y analizan desde la base de datos. Podemos identificar, por ejemplo, un botón, una cuadrícula de datos, etc., mediante un ID (por ej...
dintifla
Una breve actualización: Conseguí poner los selectores en el orden correcto usando 'selectors.unshift(idSelector)' en lugar de 'selectors.add(idSelector)' en el ejemplo anterior. Ahora sigo teniendo el problema del espacio que falta entre...
artf
Hola @dintifla SelectorManager no está pensado para funcionar así (solo puedes tener una mezcla de clases '.class1.class2' pero no con IDs), pero sinceramente no entiendo cuál es tu objetivo usando SelectorManager. Si necesitas consultar u...
dintifla
Hola @artf gracias por tu respuesta. Al final no se trata solo de consultar un componente, sino de generar el CSS para él. No necesito el HTML porque mi aplicación está diseñada en una aplicación cliente enriquecida, almacenada en una repr...
Me pregunto si es posible obtener el padre y/o el índice durante el evento block:drag para el componente resultante, similar al atributo padre en el evento component:drag. Parece que el argumento del evento pasado no contiene ninguna referencia a la progenitora. La razón por la que pregunto es que estoy trabajando en...
artf
'block:drag' no puede contener la referencia al componente porque aún no se ha creado antes de ser soltado