Возможно, вы используете await
не так, как вы ожидаете.
Строка await mostSoldProductsApiCall.json().Products
фактически сначала возвращает обещание, а затем await
в поле полученного обещания Products
, которое не определено, потому что это не результат обещания.
что-то эквивалентное:
const promise = mostSoldProductsApiCall.json() // this is the promise
const unresolvedProducts = promise.Products // this is undefined
const mostSoldProductsApiResponse = await unresolvedProducts // this resolves to undefined
Решение
Используйте скобки для await
на фактическом обещании, например Итак:
const mostSoldProductsApiResponse = (await mostSoldProductsApiCall.json()).Products
Другой вариант:
const mostSoldProductsApiResponse = await mostSoldProductsApiCall.json()
const arrayProducts = mostSoldProductsApiResponse.Products.map(function(item) {
return new Product(item.Product)
})
Надеюсь, это поможет!