let currComp = this;
let projects = []
let dataArr = []
async function getData() {
let getProject =
await axios.get('url', {
auth: {
username: 'username',
password: 'pw'
}
})
let projects = await getProject.data.value;
let arr = []
let KPIs = []
projects.map(project => {
let item = () => axios.get(`url`, {
auth: {
username: 'username',
password: 'pw'
}
})
arr.push(item)
console.log('arr', arr)
})
let results = await axios.all(arr)
results.map(result => {
result().then(function(v) {
KPIs.push(v.data.value)
})
})
}
getData();
Я пытаюсь сделать следующее:
получить вызов axios для получения названия проектов.
Используйте эти выбранные имена для вызова нескольких вызовов Axios. Это должно дать мне некоторые данные из этого проекта.
results = await axios.all(arr)
содержит функции, которые дают мне ответы на вызов API.
Ответы помещаются в массив KPIs
.
Когда я пытаюсь console.log('KPIs', KPIs)
в конце, это дает мне
![enter image description here](https://i.stack.imgur.com/0tRHh.png)
, который кажется пустым массивом, но когда я его открываю,
![enter image description here](https://i.stack.imgur.com/g02Nf.png)
это действительно имеет значение, которое я хочу.
Проблема в том, что когда я пытаюсь использовать этот массив в своем коде, он дает мне только первый элемент массива.
Я попытался найти эту проблему в Интернете, и она только сказала мне, что значение прибывает поздно.
Я хочу использовать полный массив с полным результатом.
Как я могу это исправить?