Почему мое обещание возвращает массив [объект] или [массив] - PullRequest
0 голосов
/ 26 апреля 2019

Я пытаюсь перебрать список URL-адресов из API GitHub и получить обратно массив со всей информацией.Мне возвращают массив с [объектом], [объектом] вместо реальных данных.Я предполагаю, что в моем обещании что-то не решается.

вот моя функция:

async function getCommitsByWeek() {
  const allRepoNames = await getRepos(user);
  const repoURLs = await allRepoNames.map(({ full_name, name }) => {
    return {
      name,
      url: `https://api.github.com/repos/${full_name}/stats/contributors`,
    };
  });

  const theStuff = await Promise.all(
    repoURLs.map(({ url, name }) =>
      axios.get(url, AUTH).then(({ data }) => {
        const info = data[0].weeks.map(week => {
          return { w: week.w, c: week.c };
        });
        //console.log(name, info);
        return { name, info };
      })
    )
  );
  return theStuff
}

это то, что ожидается

{ name: 'my-github-data_frontend',
  info: [ { w: 1555804800, c: 1 } ] }
{ name: 'Below-the-fold',
  info:
   [ { w: 1542499200, c: 2 },
     { w: 1543104000, c: 0 },
     { w: 1555200000, c: 0 },
     { w: 1555804800, c: 0 } ] }
{ name: 'contraction-app',
  info:
   [ { w: 1536451200, c: 9 },
     { w: 1537056000, c: 5 },
     { w: 1555200000, c: 0 },
     { w: 1555804800, c: 0 } ] }


и это то, что я получаю в настоящее время

{ name: 'Below-the-fold',
    info:
     [ [Object],
       [Object],
       [Object], ] },
  { name: 'contraction-app',
    info:
     [ [Object],
       [Object],
       [Object],
       [Object],

1 Ответ

0 голосов
/ 26 апреля 2019

Вот как это показывает консоль.В своем «что я ожидаю» вы приводите пример массива объектов.

Вывод консоли показывает массив объектов, но без детализации каждого объекта.

Если вы хотите, чтобы консоль показывала, что находится в каждом info объекте, вы можете использовать console.log(name, JSON.stringify(info));

В качестве отступа ваш return theStuff в конце кода выглядитне к месту.Не уверен, что это делает.

...