Есть ошибки, например, .json()
тоже asyn c.
Также использование Promise.all()
немного быстрее, потому что ваши вызовы API, похоже, не зависят от eatch other.
Поскольку вы возвращаете массив, вы можете напрямую писать return await Promise.all(menu.json(), items.json())
, потому что Promise all возвращает массив
async function fetchMenus({ actions, state }) {
let token = await actions.theme.fetchToken();
let [items, menu] = await Promise.all(
fetch("url", {
method: "GET",
headers: {
Authorization: `Bearer ${state.theme.token}`
}
}),
fetch("url", {
method: "GET",
headers: {
Authorization: `Bearer ${state.theme.token}`
}
})
);
return await Promise.all(menu.json(), items.json());
}