Cita:
Iniciado por djaevi Geniaaal!! funciona muy bien, te hago una consulta solo por curiosidad que es lo que hace el bind(this) para que funcione el codigo? lo pregunto xq mas alla de que funcione me gustaria aprenderlo bien el concepto de lo que hace, mil gracias!!!
Pasa la referencia de la clase que estas usando con el keyboard this ... al hacer
esto tienes todas las propiedades y metodos de la clase disponible para ser utilizado en el scope de las funciones anomimas o tambien llamadas callbacks.
pero ojo una vez haces esto el objeto this ya no referencia el elemento al cual el evento clic estaba atachado o pegado..
tendras que usar el argumento en callback ejemplo:
Código Javascript
:
Ver originalfunction agregaeventoclick(){
// dentro de la funcion agregaeventoclick , this esta disponible
element.addEventListener('submit' , function(ev){
//aqui no tenes referenciado la clase con el this
this.otherproperty; // indefinido
}
}
function agregaeventoclick(){
element.addEventListener('submit' , function(ev){
/* ya tenemo la referencia this de toda la clase
* metodo y propiedades disponibles
*/
this.otherproperty; //definido al fin
/* por pasar this en este scope
* this ya no referencia a el elemento que fue cliqueado
* lo encontraras ahora en la variable del callback
*/
console.log(ev);
}.bind(this)// pasamos la referencia this a el callback
}
Ya me enrolle
bueno espero me entiendas..