¿Cómo evitar la generación de IDs únicos?
Hola @nikita-balakirev, mira si comentario #2706 puede ayudarte. ¡Salud!
Lee la respuesta completa abajo ↓Pregunta
¡Hola! Gracias por tu trabajo @artf. Este es un código simplificado de cómo uso grapesjs, quiero guardar los estilos y luego volver a aplicarlos. El problema es que los ids ya cambiaron en DOM tras la primera llamada a 'container.components()', por lo que los estilos no se aplican. ¿Cómo prevenir este comportamiento? ¿Qué debería limpiar/reiniciar?
envoltorio = [...]
Estilo = [...]
componentes = [{mainBody: [...]}]
this.editor.setComponents(
¿Array.isArray(wrapper)? this.pruneWrapper(wrapper): wrapper,
);
const uvasEnvoltura = this.editor.getWrapper();
const [contenedor] = uvapesWrapper.find(
'[data-main-container]',
);
si (contenedor) {
container.components(components.mainBody);
}
si (estilo) {
this.editor.setStyle(style);
const grapesJsWrapper = this.editor.getWrapper();
grapesJsWrapper.rerender();
}
Respuestas (3)
Hola @nikita-balakirev, mira si comentario #2706 puede ayudarte. ¡Salud!
Ahora lo he arreglado usando 'editor. DomComponents.componentsById = {};' pero creo que puede provocar colisiones entre bloques en algún momento ¿Qué opinas?
Lo siento, @nikita-balakirev no puede ayudarte aquí sin un ejemplo completamente reproducible. Cuando exportas componentes como JSON, todos los IDs se conservan y se reutilizan si cargan correctamente, así que seguro que estás haciendo algo mal al almacenar/cargar datos. Obviamente no deberías impedir la generación de IDs únicos (ni hacer lo que hiciste) porque rompería muchas cosas
Preguntas y respuestas relacionadas
Continúa investigando con debates sobre temas similares.
Issue #3347
¿Cómo puedo conseguir código JS sin comprimir para editarlo?
Hola, gracias por revisar mi problema. Quiero usar mi propio JSEditor para editar html, css y js. Primero, uso 'getHtml', 'getCss', 'getJs'...
Issue #1748
Cómo evitar que los elementos arrastren dentro del editor
Hola @artf Lo estás haciendo muy bien con grapesjs y es extremadamente útil hacer que nuestra funcionalidad sea más fácil de usar. Gracias...
Issue #1588
[PREGUNTA]
¡Hola a todos y gracias por vuestro magnífico trabajo y por esta API! Tengo una pregunta sobre la caja, que envuelve todos los componentes...
Issue #3404
Problema con el Style Manager.
Hola @artf quiero ocultar y mostrar propiedades de estilo para un componente específico. Tras referenciar este problema https://github.com/...
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.