Fetch: Variable mit Fetch-Antwort setzen und von Funktion [duplizieren] zurückgeben
Diese Frage hat hier bereits eine Antwort:
Wie kann ich die Antwort von einem asynchronen Anruf zurückgeben? 33 answersIch bin ganz neu mit JavaScript und reagiere. Ich habe einen Rückruf von einer Komponente, die einen Kundennamen von einem Server mit einer ID erhält. Der Abruf funktioniert und die Datei console.log gibt den vollständigen Namen korrekt aus, aber der Kundenname in der letzten .then-Datei ist nicht festgelegt, und die Funktionen geben eine leere Zeichenfolge zurück. Warum das
// Gets the fullname of the customer from an id.
tj_customer_name(id) {
let customer_name = '';
fetch(`/customers/${id}.json`, {
headers: API_HEADERS,
credentials: 'same-origin'
})
.then((response) => {
if(response.ok) {
return response.json();
} else {
throw new Error('Server response wasn\'t OK');
}
})
.then((json) => {
customer_name = json.first_name.concat(' ').concat(json.last_name);
console.log(customer_name);
});
return customer_name;
}