Tener dos instancias de uva presentes hace que el gestor de activos de la primera "parada" trabaje
Vale, después de investigar un poco más, el verdadero problema era la forma en que iniciaba a los editores, así que mi culpa. No me aseguraba de que las instancias fueran realmente separadas y sobrescribía la primera instancia aunque parecía normal sin errores. Cierro este número porque no es un informe de error real.
Lee la respuesta completa abajo ↓Pregunta
Versión: 0.16.44
¿Cuál es el comportamiento esperado?
Espero tener dos instancias separadas de uva en una sola página y poder utilizar correctamente el gestor de activos
Describe el error detallado
He inicializado 2 instancias de Grape en una página con la configuración a continuación
'''javascript AR editor = grapesjs.init({ fromElement: 1, contenedor: "#{{varName}}", plugins: [...], styleManager: false, avisoOnUnload: falso, storageManager: false, Paneles: {...}, assetManager: { subir: '/api/handleEditorUpload', uploadName: 'archivos', },
Lo que ocurre es que, en la segunda instancia del editor, el gestor de activos funciona bien. Al contrario, en primer lugar el gestor de activos parece estar un poco roto.
En la imagen de abajo, puedes ver lo que se muestra cuando intento usar el gestor de activos en primera instancia. Aquí he subido una imagen pero no aparece por ningún lado.
! [imagen](https://user-images.githubusercontent.com/65759874/111960862-f319aa00-8af8-11eb-8ebe-90c37a6b116a.png)
PERO la imagen parece estar gestionada en el gestor de activos de la otra instancia, así como todas las demás imágenes ya subidas...
! [imagen](https://user-images.githubusercontent.com/65759874/111961329-9965af80-8af9-11eb-835a-1b4213f5a438.png)
Tampoco hay error visible. ¿Alguna idea de por qué podría estar pasando esto?
*ACTUALIZACIÓN*
Esto parece ser un problema al configurar el assetManager en la configuración inicial del editor: si comento la parte asseManager: {..}, de repente el editor se comporta como se esperaba. ¿Cómo puedo configurar esta propiedad y que funcione? Tengo que encargarme yo mismo de la imagen.
Respuestas (2)
Vale, después de investigar un poco más, el verdadero problema era la forma en que iniciaba a los editores, así que mi culpa. No me aseguraba de que las instancias fueran realmente separadas y sobrescribía la primera instancia aunque parecía normal sin errores. Cierro este número porque no es un informe de error real.
Gracias por informar de esto, @ThetripGr.
El problema de tener dos instancias de uva presentes hace que el gestor de activos de la primera "parada" funcione parece ser un problema de condición de carrera o de sincronización de gestión estatal. Esto suele ocurrir cuando los eventos del ciclo de vida de los componentes y las modificaciones del DOM se superponen, creando un estado inconsistente.
Qué probar:
- Añadir un envoltorio setTimeout para asegurar que el DOM se ha asentado: '''javascript setTimeout(() => { Tu operación aquí }, 0);
2. **Comprobar el orden de inicialización** — asegúrate de que los componentes estén completamente cargados antes de interactuar con ellos
3. **Utilizar el sistema de eventos del editor** — escuchar los eventos de finalización:
'''javascript
editor.on('component:mount', (component) => {
Es seguro interactuar con el componente aquí
});
Recomendaciones de siguientes pasos:
- Prueba con la última versión de GrapesJS si no lo has hecho
- Proporcionar un ejemplo mínimo reproducible (CodeSandbox) — esto ayuda al equipo a identificar la causa raíz más rápido
- Incluir errores de GrapesJS, de navegador y de consola en tu informe
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #3434
Usar HTML/CSS/JS importado en el editor muestra esquemas, pero no tiene contenido, JS Fiddle dentro
Puedes obtener la versión escribiendo 'grapesjs.version' en la consola SÍ: https://jsfiddle.net/75a9u1cf/2/ ¿Cuál es el comportamiento espe...
Issue #3125
El CSS de gradiente lineal hace cosas extrañas con la imagen de fondo
Versión: 0.16.27 ¿Puedes reproducir el error de la demo? [x] Sí [ ] No ¿Cuál es el comportamiento esperado? Al añadir 'imagen de fondo' a t...
Issue #3455
El estilo se borra al insertar componentes en varias páginas usando el Administrador de Páginas
Versión: 0.17.3 ¿Cuál es el comportamiento esperado? El estilo debe mantenerse en varias páginas Describe el error detallado Tenemos casos...
Issue #5795
¿Cómo añadir un gestor de bloques personalizado adicional como tabulación o sección como gestor de bloques y gestor de estilos, y añadirlo a algunos bloques?
Versión GrapesJS [X] Confirmo que se debe usar la última versión de GrapesJS ¿Qué navegador usas? Chrome V9 Enlace de demo reproducible Des...
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 →Tutoriales relacionados
Guías detalladas sobre el mismo tema.
Tutorial
Ship to Production Faster: What’s New in GrapesJS Shadcn
Supercharge your page builder! GrapesJS Shadcn adds live drag previews, rich text / commands, dynamic data, and canvas presets to ship to prod faster.
Tutorial
How to Build a Production GrapesJS Editor: The Complete Walkthrough of Brief, Preset, Plugins, and Services
A complete walkthrough of building a production GrapesJS editor: how to choose a preset, pick plugins, and scope setup services without burning a sprint.
Tutorial
GrapesJS Inline RTE Plugins Update: CKEditor 5 v0.1.4 and Froala Inline Text Editor
CKEditor 5 Inline for GrapesJS v0.1.4 fixes Studio SDK toolbar clipping, iframe injection and link balloon bugs. Compare with Froala Inline — both $69.
Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.