Los eventos vinculados no se están cargando (simplemente funcionan correctamente en Mozilla Firefox)
Pregunta
Así que estoy usando almacenamiento local. He añadido algunos eventos al componente de esta manera.
comps.addType('input', {
modelo: {...},
view: defaultType.view.extend({
Eventos de vinculación
eventos: {
Si quieres vincular el evento a elementos infantiles
'haz clic en .someChildrenClass': 'métodoNombre',
clic: 'handleClick',
dblclick: function(){
alerta ('¡Hola!');
}
},
No tiene mucho sentido que este método esté dentro del componente
Pero está bien como ejemplo
randomHex: función() {
return '#' + Math.floor(Math.random()*16777216).toString(16);
},
handleClick: function(e) {
this.model.set('style', {color: this.randomHex()}); <- Afecta al código HTML final
this.el.style.backgroundColor = this.randomHex(); <- No afecta al código HTML final
Consejo: actualizar el modelo reflejará los cambios en la vista, así que, en este caso,
si pones el cambio de modelo después del del DOM, esto sobrescribirá el Color de fondo
Cambios realizados antes
},
El render() debería devolver 'esto'
render: función () {
Extiende el método de renderizado original
defaultType.view.prototype.render.apply(esto, argumentos);
this.el.placeholder = 'Texto aquí'; <- No afecta al código HTML final
devuelvo esto;
},
}),
});
Cada vez que añado el componente funciona perfectamente. Sin embargo, si recargo la página, el componente sigue ahí, pero ya no activa el evento de clic ni el dblclick. He notado que esto ocurre en Chrome y Safari navegadores. Para solucionar este problema tienes que usar Firefox. ¿Cómo solucionar esto en cualquier navegador? ¡Gracias!
Respuestas (2)
Deberías añadir ese código como un plugin
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.
Issue #1959
[Pregunta] Editar innerHTML en un botón personalizado
Hola a todos, Estoy intentando cambiar el texto en un componente de botón, pero no consigo editarlo. He añadido este tipo: Incluí el paráme...
Issue #538
Pulsar componente siempre abre los estilos primero, incluso si sobrescribo
Cuando hago clic en el componente, quiero que se abran los rasgos Al hacer clic en un componente se abren los estilos. Pulsando una vez más...
Issue #1030
[Pregunta] Eventos de disparo con componentes personalizados
Estoy intentando crear un plugin para Grapesjs con algunos componentes personalizados, y tengo problemas para activar eventos e interactuar...
Issue #1459
[PREGUNTA] Cómo almacenar los atributos "data-" en la etiqueta html del componente
Hola, estoy desarrollando un plugin para gráficos usando chart.js. Para que la plantilla generada renderice el gráfico desde un modelo de d...
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.
Explorar categorías de plugins
Ve directamente a las páginas de categorías de plugins en el marketplace.