Estoy tratando de obtener datos sobre mi API-Endpoint y quiero completar mi página con los datos. Sé que tengo que usar async/await para asegurarme de que se llenó la variable. Por lo tanto, escribí las siguientes líneas y quiero saber si es posible escribir una función asíncrona dentro de una función asíncrona. Está funcionando, pero no estoy seguro de si es la forma correcta:
async function getRoom(id) { const response = await fetch('/api/zimmer/' + id); if (!response.ok) { const message = `An error has occured: ${response.status}`; throw new Error(message); } const rooms = await response.json(); console.log(rooms); return rooms; } async function getSelectedItem() { var e = document.getElementById("Objekt"); if (e.value > 0) { zimmer_select.disabled = false; var response = await getRoom(e.value); console.log(response); response.forEach(function(element) { console.log(element); }); } else { zimmer_select.disabled = true; } console.log(e.value); }Creo que está bien usarlo de esta manera en realidad. Si lo piensa, a veces tiene que usar async dentro de async. ¿Qué sucede si tiene alguna función asíncrona que obtiene datos y tiene que recorrer esos datos y esperar algo? Si lo repite con for each, no podrá usar await, por lo que debe poner async antes. Entonces, siempre que esté limpio y no tenga otra forma, creo que está bien usar async dentro de async.