Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

94
Visualizações
Not receiving the correct data from Promises?

I have a function that fetches data from an API, and the function works correctly as intended:

 const getStockData = async (stock) => {
try {
  const response = await axios.get(`${BASE_URL}${stock}${KEY_URL}`);
  console.log(response);
  return response;
} catch (error) {
  console.error('Error', error.message);
}

};

And I have another function that gets data from my firebase which then passes in the .ticker into the function above however when I log the response from the promise the data is returned null Is there a reason why its not working as intended?

const getMyStocks = async () => {
let promises = [];
let tempData = [];
const querySnapshot = await getDocs(collection(db, 'myStocks'));
querySnapshot.forEach((doc) => {
  console.log(doc.data().ticker);
  promises.push(
    getStockData(doc.data().ticker).then((res) => {
      console.log(res);
      tempData = {
        id: doc.id,
        data: doc.data(),
        info: res.data,
      };
    })
  );
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

getMyStocks must return the resolution of the promises it creates...

// to reduce nested promises, this takes an FB doc and adds the getStockData query to it
const getFBAndTickerData = async doc => {
  return getStockData(doc.data().ticker).then(res => {
    console.log(res);
    return {
      id: doc.id,
      data: doc.data(),
      info: res.data,
    };
  });
}

const getMyStocks = async () => {
  const querySnapshot = await getDocs(collection(db, 'myStocks'));
  let promises = querySnapshot.docs.map(doc => {
    console.log(doc.data().ticker);
    return getFBAndTickerData(doc);
  });
  return Promise.all(promises);
}
about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda