Issue #625✓ ResueltoAbierto el 10 de diciembre de 2017por CaimilanReacciones 2

Editor.store(); Disparos múltiples

Respuesta rápidapor artf2

Cada vez que llamas a 'save-db' '''js cmdm.add('save-db',{ run: function(editor, sender){ ... Sácalo de tu orden

Lee la respuesta completa abajo ↓

Pregunta

Hola @all, Uso mi código personalizado para detener los datos en el servidor. Todo funciona bien, pero editor.store(); dispara una vez en el primer clic, dos en el segundo, tres veces en el tercer clic... y así sucesivamente.

var editor = grapesjs.init({
	Altura: '100%',
	storageManager:{
		guardado automático: falso,
		autoload: false,
		setStepsBeforeGuard: 0,
		Tipo: 'A distancia',
		contentTypeJson: false,
	},
.....

Guardar en el servidor
cmdm.add('save-db',{
	run: function(editor, sender){
		sender & & sender.set('active');
		editor.store();
		editor.on('storage:store', function(e) {
			console.log('Almacenado', e);
			console.log(editor.runCommand('gjs-get-inlined-html'));
			var data = e;
			var inline = editor.runCommand('gjs-get-inlined-html');
			$.post(
				URLAPP + 'lib/editor-nl/save-tpl.php',
				{
					'datos': datos,
					'en línea': en línea,
					'tpl-name': $('#panel-tpl-title').val()
				}
			);
		});
	}
});
pnm.addButton('options', {
	id: 'guardar-db',
	claseNombre: 'fa fa-floppy-o',
	Comandamiento: 'guardar-db',
	atributos: {
		'título': 'Plantilla de especialización',
		'data-tooltip-pos': 'abajo',
	}
});

En StorageManager > tipo uso 'remoto'; si uso 'local', el primer clic no tiene efecto. ¿Alguien puede ayudarme?

Respuestas (3)

👍 Muy útilartf10 de diciembre de 2017

Cada vez que llamas a 'save-db' '''js cmdm.add('save-db',{ run: function(editor, sender){ ...

Adjuntas a un nuevo oyente
'''js
editor.on('storage:store', function(e) { ...

Sácalo de tu orden

shareefhiasat15 de mayo de 2018

Hazlo así para no conectar oyentes cada vez

editor.on('storage:load', function(e) {
        console.log('Cargado', e);
    });

editor.on('storage:store', function(e) {
        console.log('Almacenado', e);
    });

cmdm.add('save-db', {
      run: function(editor, sender)
      {
            sender & & sender.set('active'); Apaga el botón
            editor.store();
      }
    });
lock[bot]17 de septiembre de 2019

Este hilo se ha bloqueado automáticamente porque no ha habido actividad reciente desde que se cerró. Por favor, abre un nuevo problema para bugs relacionados.

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.