Tengo una función simplificada que se ve así:
function(query) {
myApi.exec('SomeCommand', function(response) {
return response;
});
}
Básicamente, quiero que llame myApi.exec
y devuelva la respuesta que se da en la devolución de llamada lambda. Sin embargo, el código anterior no funciona y simplemente regresa de inmediato.
Solo por un intento muy hostil, probé lo siguiente, que no funcionó, pero al menos te haces una idea de lo que estoy tratando de lograr:
function(query) {
var r;
myApi.exec('SomeCommand', function(response) {
r = response;
});
while (!r) {}
return r;
}
Básicamente, ¿cuál es una buena forma de 'nodo.js / evento impulsado' de hacer esto? Quiero que mi función espere hasta que se llame la devolución de llamada y luego devuelva el valor que se le pasó.