Per chiunque usi i callback, come posso avvicinarmi quando il metodo è un setter asincrono?
Ecco un esempio
class API
{
constructor()
{
this.token = null;
}
refreshToken(callback)
{
request("http://api.com/token", (token) => {
this.token = token;
callback(token);
});
}
}
Quale sarebbe il punto di restituzione del token se lo avessi già impostato nella proprietà dell'oggetto?
Mi sento sbalordito quando finisco per fare qualcosa del genere:
api.refreshToken((token) => {
//callback is used as a 'wait until token arrives' for proceeding code
request("http://api.com/data?token=" + token);
});
Ma ho bisogno di esso come proprietà dell'oggetto per poter riutilizzare il token, ad esempio:
request("http://api.com/data?token=" + this.token);
Ma ora ho due variabili per la stessa cosa, fornite dalla proprietà di OOP e dal callback. È un problema piuttosto stupido, ma ho bisogno di una guida.