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

337
Visualizações
Variable fuera del alcance (probablemente) - indefinido

Entonces, este fragmento de código está devolviendo la descripción de la palabra en json de https://sjp.pl/ webiste, palabra que el usuario proporcionó antes en el cuerpo de la solicitud json

Y el problema es que quiero devolver var 'desc' en res.send pero no está definido. ¿Cómo puedo acceder a eso y enviarlo?

Creo que eso se debe a que item.push($(this).text()) funciona solo en esta función axios y solo se puede acceder en este ámbito

 const item = []; var desc; app.post('/test', (req, res) => { const { word } = req.body; if(!word) { res.status(418).send({error: 'no word provided'}) } console.log(word) axios(`https://sjp.pl/${word}`).then(res => { const html = res.data const $ = cheerio.load(html) $('p').each(function() { item.push($(this).text()) }) desc = item[3] console.log(desc) // working until here }) console.log(desc) // undefined here res.send({ description: `${desc}` }) })
over 4 years ago · Santiago Trujillo
1 Respostas
Responde à pergunta

0

Use res dentro de los axios como se muestra a continuación. Te estás volviendo undefined porque el desc de descripción termina dentro de esa función anónima. Además, el axios es async . Es posible que deba usar await para sync o puede seguir la idea que propuse a continuación.

 const item = []; var desc; app.post('/test', (req, res0) => { const { word } = req.body; if(!word) { res0.status(418).send({error: 'no word provided'}) } console.log(word) axios(`https://sjp.pl/${word}`).then(res => { const html = res.data const $ = cheerio.load(html) $('p').each(function() { item.push($(this).text()) }) desc = item[3] res0.send({ description: `${desc}` }) }) })
over 4 years ago · Santiago Trujillo 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