Wenn ich Anfrage-Versprechen in einer Funktion einen Wert zurückzugeben, es sagt undefined
Also aus der Betrachtung der Wunsch-das Versprechen-docs, hier ist was ich habe
function get_data_id(searchValue) {
rp('http://example.com?data=searchValue')
.then(function(response) {
return JSON.parse(response).id;
});
}
Ist und ich dann diesen code verwenden, an anderer Stelle in meinem Skript
console.log(get_data_id(searchValue));
Gibt aber undefined
.
Wenn ich return JSON.parse(response).id
zu console.log(JSON.parse(response).id)
bekomme ich die folgende
undefined
valueofID
Also der Wert, den ich versuche, die Rückkehr ist definitiv gültig/korrekt ist, aber ich kann nicht herausfinden, wie man zurück, es als einen Wert.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Müssen Sie zurück das Versprechen der Anrufer:
Dann nutzen Sie Ihre Funktion wie folgt:
Ich denke, es ist, weil die Anfrage-Versprechen zurückzukehren ein Versprechen.
Also, wenn Sie direkt Konsole.Protokoll der Rückgabewert, es wird nicht definiert, da die Verheißung ist noch nicht geklärt.