Ich habe eine vereinfachte Funktion, die so aussieht:
function(query) {
myApi.exec('SomeCommand', function(response) {
return response;
});
}
Grundsätzlich möchte ich, dass es aufruft myApi.exec
und die Antwort zurückgibt, die im Rückruf-Lambda gegeben wird. Der obige Code funktioniert jedoch nicht und kehrt einfach sofort zurück.
Nur für einen sehr hackigen Versuch habe ich das Folgende ausprobiert, was nicht funktioniert hat, aber zumindest kommt Ihnen die Idee, was ich erreichen möchte:
function(query) {
var r;
myApi.exec('SomeCommand', function(response) {
r = response;
});
while (!r) {}
return r;
}
Was ist im Grunde eine gute "node.js / event-gesteuerte" Vorgehensweise? Ich möchte, dass meine Funktion wartet, bis der Rückruf aufgerufen wird, und dann den Wert zurückgibt, der an sie übergeben wurde.