Uso un bucle a través de los elementos del nodo para obtener la ID del elemento en el que se hizo clic. Hasta entonces todo bien y funciona. Ahora quiero llamar a otra función en mi clase y obtener este error:
this._PreLoad no está definido en HTMLElement.s.onclick
this._joinnews.forEach((node) => { node.onclick = function(){ const requestData = `newsid=${node.id}`; // some code // this._PreLoad(true); // ERROR // _PreLoad(true); not working // this._PreLoad(true).bind(this); not working (I am not yet familiar with the bind function) } });¿Son desconocidas las funciones dentro de un bucle de nodo?
El lugar correcto para bind this es aquí:
node.onclick = function() { const requestData = `newsid=${node.id}`; // some code // this._PreLoad(true); }.bind(this); // bind here! Alternativamente, use una función de flecha que conserve this como lo que fuera en el momento de la declaración de la función:
node.onclick = () => { const requestData = `newsid=${node.id}`; // some code // this._PreLoad(true); }