Issue #849💬 RespondidoAbierto el 8 de febrero de 2018por ajwoottoReacciones 1

¿Posibilidad de descargar y destruir la instancia del editor o volver a cargar las opciones de configuración?

Respuesta rápidapor maxtacco1

Puedes acceder a RemoteStorage y actualizar URLs en cualquier momento: '''javascript const RemoteStorage = editor. StorageManager.get('remote'); RemoteStorage.set('urlLoad', [urlLoad]); RemoteStorage.set('urlStore', [urlStore]); ```

Lee la respuesta completa abajo ↓

Pregunta

En mi caso, intento cambiar dinámicamente las URLs de almacenamiento y carga que usa el gestor de almacenamiento remoto. Por lo que puedo ver, el editor no detecta ni usa ningún cambio en la configuración si los cambio directamente, es decir, '''Editor. Config.storageManager.storeUrl = 'blah'''' después de que el editor ya haya sido inicializado.

Para intentar sortearlo, intentaba descargar el editor de la página de forma programática eliminando el elemento DOM de destino y recuperando init. Sin embargo, la función de init parece crear múltiples instancias del editor. Noté que el array GrapesJS.editors las controla, así que probé a ponerlo en vacío para intentar que las instancias fueran recogidas como basura. Sin embargo, incluso en este caso, el editor tiene gestores de eventos que parecen activarse después, guardando datos erróneos.

Idealmente, me gustaría una forma de destruir el editor con algún método destructor (si no existe ya) o forzar la recarga de las opciones de configuración sin recargar el editor.

Respuestas (3)

maxtacco8 de febrero de 2018

Puedes acceder a RemoteStorage y actualizar URLs en cualquier momento: '''javascript const RemoteStorage = editor. StorageManager.get('remote'); RemoteStorage.set('urlLoad', [urlLoad]); RemoteStorage.set('urlStore', [urlStore]);

ajwootto8 de febrero de 2018

Ambas opciones probablemente funcionarían, aunque algo que olvidé mencionar es que en algunos casos quiero reinicializar el editor con componentes y estilos preespecificados (es decir, pasándolos en el init) en lugar de cargarlos desde almacenamiento remoto, pero en otros casos quiero que el contenido inicial venga solo de almacenamiento remoto. Esto ocurre en la misma página, con el contenido del editor teniendo que ser intercambiado. ¿Hay alguna API que me esté perdiendo que pueda hacer esto?

Preguntas y respuestas relacionadas

Continúa investigando con debates sobre temas similares.

Plugins de pago que cumplen con este problema

Seleccionado por temas clave y relevancia de etiquetas para ayudarte a enviar más rápido.

Ver todos los plugins

Cargando recomendaciones de plugins de pago...

Opción gratuita

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 →
Opción premium

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.

Todos los tutoriales →

Explorar categorías de plugins

Ve directamente a las páginas de categorías de plugins en el marketplace.