Есть функция
function func() {
getData().then(result => {
// Код
});
}
return [
{
// код
},
];
}
Из нее мы вызываем метод, который делает запрос и возвращает промис.
async function getDataRequst() {
const response = await getData(); // getData это запрос, который возвращает промис.
return response;
}
function getData() {
return new Promise<any>(resolve => {
const data = await getDataRequest();
resolve(data);
}
}
Должно работать оно так:
1. Мы вызываем метод func, у нас выполняется промис, который находится в getData, далее с ним что-то происходит в then'e и только потом срабатывает return.
Сейчас return срабатывает ровно в тот момент, когда вызывается метод getData, не дождавшись, пока выполнится промис.
Очень мало работал с промисами, и не могу понять, в чем дело.