t-alexashka
@t-alexashka
Сразу пишу legacy код

Await в axios не работает?

Привет друзья!

Есть ф-я probSetter которая устанавливает каждому заказу какую-то вероятность. Эта функция отправляет get-запрос на сервер, и должна возвращать ответ. Но почему то она возвращает промис.

async function probSetter(order_id) {

	return await axios.get(`http://site.local/calc-probs?order_id=${order_id}`)
}

let arr = [1, 2]
arr.forEach(element => {
	let prob = probSetter(element)
	console.log(`${element} = ${prob}`)
});


выводит:
1 = [object Promise]
2 = [object Promise]


Что я не так делаю? подскажите правильный вариант.
  • Вопрос задан
  • 208 просмотров
Решения вопроса 1
wapster92
@wapster92 Куратор тега JavaScript
async function probSetter(order_id) {

  return await axios.get(`http://site.local/calc-probs?order_id=${order_id}`)
}

const arr = [1, 2]
const promises = arr.map(n => proprobSetter(n))
Promise.all(promises).then(results => {
  results.forEach((n, i) => {
    console.log(`${i} = ${n}`)
  });
})
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
qork
@qork
{ background: #F00B42 }
После вызова функция async возвращает Promise.

https://developer.mozilla.org/ru/docs/Web/JavaScri...
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы