Problemas con GrapesJS

Problemas analizados por 3,464 en GitHub 370 resuelto · 90 abierto. Busca, filtra y explora respuestas probadas en batalla.

Se han detectado problemas con 231

🔍 general
#33042 de marzo de 2021por SyedHashimShah3 respuestas
Reacciones 2

¿Cómo puedo personalizar la interfaz de usuario de Grapesjs?

Quiero personalizar la interfaz de Grapesjs, pero los archivos js y css están minificados. Por favor, decidme cómo puedo hacer esto. Solo quiero mantener algunos bloques específicos como imágenes, texto, etc. en mi interfaz.

echobinod

Sass se utiliza para generar los archivos css minificados. Puedes cambiar las variables de estilo desde aquí: src/styles/scss/

artf

@SyedHashimShah https://grapesjs.com/docs/getting-started.html

ClaudeCode

Gracias por informar de esto, @SyedHashimShah. Buena pregunta sobre ¿Cómo puedo personalizar la interfaz de Grapesjs?. El enfoque recomendado con StyleManager es usar la API orientada a eventos. Empieza aquí: Consulta la documentación de G...

#33032 de marzo de 2021por RutujaBadbe4 respuestas
Reacciones 1

El orden de las categorías no se muestra correctamente

¡Hola! Quiero mostrar las categorías en el gestor de bloques en una secuencia determinada. Revisé la documentación y problemas anteriores y encontré algo sobre el atributo de orden. Así que probé a establecer el atributo de orden. Pero aún no se muestra en ese orden aunque el atributo de orden se esté configurando. ¿M...

Ju99ernaut

Supongo que puedes hacer que esto sea una solicitud de funcionalidad, no estoy seguro de si algo así existe ya en grapesjs. Aunque el orden de los bloques puede ser más fácil de gestionar si divides los bloques de cada categoría en diferen...

Ju99ernaut

Creo que el orden en que se añaden los bloques es lo que determina el orden de las categorías.

RutujaBadbe

@Ju99ernaut ¡hola! Gracias por la respuesta. Sí. Al final hice eso. ¿pero qué pasa si quiero hacerlo de forma dinámica? Si hay muchos bloques, ¿no es difícil mantener el orden?

#32981 de marzo de 2021por neon123452 respuestas
Reacciones 1

HAZAÑA: ocultar etiquetas de componentes mientras editas texto

Para el texto colocado en la parte superior de la página, las etiquetas de los componentes pueden solaparse y ocultar el texto durante la edición. Además, la etiqueta puede solaparse con las herramientas de edición de texto cuando no está en la parte superior. Ocultar las etiquetas mientras editas el texto evitaría es...

RutujaBadbe

Puedes ocultar las etiquetas usando badgable: false https://grapesjs.com/docs/api/components.html#parameters-3

ClaudeCode

Gracias por informar de esto, @neon12345. Gracias por compartir tu informe sobre FEAT: ocultar etiquetas de componentes mientras editas texto. Para ayudar al equipo a investigar y priorizar esto: Por favor, proporciona: Un ejemplo mínimo r...

#32961 de marzo de 2021por RaresVlaiduc3 respuestas
Reacciones 1

Plugin de varias páginas

¡Hola! He visto algunas discusiones sobre algún tipo de plugin de varias páginas aquí. ¿Esto sigue siendo algo así? ¿Se ha hecho algo al respecto o debería empezar mi propio plugin? ¡Gracias!

Ju99ernaut

He hecho uno sencillo para indexedDB, pero también puede adaptarse para otros tipos de almacenamiento https://github.com/Ju99ernaut/grapesjs-indexeddb-ui sin embargo, planeo dejarlo en favor de un nuevo plugin que incluya otros tipos de al...

artf

Sí, todavía está bastante avanzado (no tengo fecha estimada de llegada, por desgracia), pero seguro que el PageManager estará en el núcleo.

ClaudeCode

Gracias por informar de esto, @RaresVlaiduc. Buena pregunta sobre [PREGUNTA]: Plugin de varias páginas. El enfoque recomendado con GrapesJS es usar la API orientada a eventos. Empieza aquí: Consulta la documentación de GrapesJS de tu módul...

#329427 de febrero de 2021por server1024 respuestas
Reacciones 0

HAZAÑA: Añadir opciones al array de la lista de propiedades en el gestor de estilos

Hola, ¿Cómo puedo añadir buildProps a la lista de propiedades para que, cuando se seleccione una opción, se muestren las propiedades de esa opción? Un ejemplo de lo que intento conseguir en la propiedad flexible. '''javascript { nombre: 'Layout', Abierto: Cierto, buildProps: ['display'], Propiedades: [ { Tipo: 'Radio'...

Ju99ernaut

Creo que puedes mover los proyectos de construcción fuera de la lista de propiedades y aun así conseguir lo que buscas; las propiedades integradas relacionadas con la caja flexible solo aparecen cuando un componente tiene 'display: flex'....

server102

Gracias. Lo he probado pero las propiedades de la cuadrícula no funcionan. Puede que tenga que implementarlo manualmente, pero no estoy seguro de cómo abordar el problema de la mejor manera.

Ju99ernaut

No hay 'buildProps' para propiedades de la cuadrícula, así que tendrás que construirlas desde cero; desafortunadamente, la documentación no tiene mucha información sobre propiedades personalizadas, probablemente tendrás que juntar las piez...

#329326 de febrero de 2021por eikerd2 respuestas
Reacciones 0

Blockmanager: añadiendo DIVs personalizados de clase gjs-block-category / gjs-title

Tengo una lista de categorías y quiero marcar algunas con un estilo diferente dependiendo de si son obligatorias o no. Así que idealmente podría añadir una clase a la div con la clase 'GJS-título' para que diga 'GJS-título requerido-campo' 'this.editor.BlockManager.getCategories();' devuelve un array de todas mis cate...

artf

Hola @eikerd revisando el código, por ahora no veo otra forma de personalizar los DOMs de categorías de bloques si no haces algo por tu cuenta con el DOM (una vez que los bloques están renderizados). Probablemente añadiré la vista al model...

ClaudeCode

Gracias por informar de esto, @eikerd. Buena pregunta sobre Blockmanager: añadir DIVs personalizados de clase gjs-block-category / gjs-título. El enfoque recomendado con StyleManager es usar la API orientada a eventos. Empieza aquí: Consul...

#328521 de febrero de 2021por ashercoren4 respuestas
Reacciones 6

Doctype en el iframe de lienzo

Hola. Esta pregunta ya se ha hecho dos veces (aquí y aquí) pero nunca ha recibido respuesta. ¿Hay alguna forma de añadir '<!DOCTYPE html>' como inicio del iframe de lienzo para que el iframe esté en modo estándar? Necesito esto porque intento usar tinyMce como RTE personalizado, y tinyMce requiere modo estándares.

artf

En la próxima versión, añadiré un nuevo asistente para eventos que permitirá editar contenido iframe antes de cargar: '''js editor.on('frame:load:before', ({ el }) => { const doc = el.contentDocument; doc.open(); doc.write("<!DOCTYPE html>...

bgrand-ch

Hola, Para futuras preguntas o problemas técnicos, que no sean errores, la pestaña Discussions de GitHub es el lugar ideal. No olvides cerrar este problema si se resuelve o escribir un nuevo mensaje detallado en la categoría Discussiones -...

artf

No realmente, pero estoy abierto a soluciones para hacerlo personalizable.

#328420 de febrero de 2021por mig8447Respuesta 1
Reacciones 0

El renderizado por bloques se está llamando dos veces

https://github.com/artf/grapesjs/blob/b199083f6a6128ecff41d20865493294f71fe0a1/src/block_manager/view/BlocksView.js#L142 Esta línea hace que el bloque se vuelva a renderizar, ya que el renderizado es escuchar eventos de 'cambio', pero dado que esta propiedad no afecta al renderizado del bloque en sí, el conjunto deber...

ClaudeCode

Gracias por informar de esto, @mig8447. Gracias por compartir tu informe sobre El renderizado en bloques está siendo llamado dos veces. Para ayudar al equipo a investigar y priorizar esto: Por favor, proporciona: Un ejemplo mínimo reproduc...

#328320 de febrero de 2021por mig84474 respuestas
Reacciones 2

El renderizado BlocksView se llama dos veces

https://github.com/artf/grapesjs/blob/b199083f6a6128ecff41d20865493294f71fe0a1/src/block_manager/view/BlocksView.js#L186 El Administrador de Bloques busca una propiedad de 'renderizado' en el modelo para saber si la vista ya se ha renderizado o no, pero este método no establece dicha propiedad y, por tanto, esta funci...

mig8447

@RutujaBadbe Este es exactamente el cambio que necesitas: https://github.com/artf/grapesjs/commit/640661b0a44e5e2857b615559c1db27da3e17a6c

artf

Sí, tiene sentido, gracias

RutujaBadbe

https://github.com/artf/grapesjs/blob/b199083f6a6128ecff41d20865493294f71fe0a1/src/block_manager/view/BlocksView.js#L186El Administrador de Bloques busca una propiedad de 'renderizado' en el modelo para saber si la vista ya se ha renderiza...

#328220 de febrero de 2021por ThomasPof2 respuestas
Reacciones 0

La función CleanId no funciona con código MJML

CleanID sigue sin funcionar para el código MJML, ni siquiera en la última versión de grapesJS (0.16.41) Está relacionado con este tema cerrado: https://github.com/artf/grapesjs/issues/3276 Esta función no lee las etiquetas MJML: los 'attrs' están vacíos, y no encuentro por qué...

artf

El problema del id debería haberse resuelto ya en la última versión del plugin de mjml

ClaudeCode

Gracias por informar de esto, @ThomasPof. Buena pregunta sobre la función CleanId que no funciona con código MJML. El enfoque recomendado con GrapesJS es usar la API orientada a eventos. Empieza aquí: Consulta la documentación de GrapesJS...

Explora todos los temas