Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

141
Views
Luchando usando pokeapi tratando de obtener una descripción de la habilidad
const fetch = require("node-fetch"); const Discord = module.require("discord.js"); module.exports = { name: "ability", aliases: ["abilities"], description: "Displays pokedex information for a given pokemon", category: "util", requiredArgs: ["query"], run: async (client, message, args) => { const query = args.join(" "); if (!query) { return message.channel.send("Try Again This Time With A Pokemon Name"); } try { const data = await fetch( `https://pokeapi.co/api/v2/ability/${encodeURIComponent( query )}` ).then((res) => res.json()); let embed = new Discord.MessageEmbed() .setDescription(`*${data.flavor_text_entries.flavor_text[1]}*`) message.reply({ embeds: [embed] }); } catch(err) { console.log(err); message.reply('NO DATA FOUND') } }, };

¿Cómo puedo obtener la descripción de la habilidad? No encontré nada sobre cómo obtener detalles específicos de la API en los documentos, ¡así que agradecería su ayuda!

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Por lo que puedo ver al mirar su API, obtendrá una matriz multidimensional, que deberá iterar para obtener la descripción que necesita.

Un buen método en este caso es usar el bucle for in , que es óptimo, porque puede optar por break una vez que haya accedido al valor que estaba buscando.

No puedo decir por su pregunta, cómo está procesando los data exactamente, así que me tomé la libertad de hacer mi propia estructura. Siéntase libre de usarlo, editarlo o hacer lo que se adapte a sus necesidades.

Tenga en cuenta que la estructura de la búsqueda que estoy haciendo es dinámica hasta "hasta cierto punto", como elegir la capacidad de describir, así como el idioma en el que se debe mostrar.

En mi ejemplo, usaré la habilidad que tiene el valor de 4 , también conocida como armadura de batalla en su registro API. El resultado será en inglés para mi ejemplo.

Cuando ejecute el fragmento, espere unos segundos para que se transmita la respuesta.

 const getDescription = async (value, lang='en') => { const dataList = await fetch(`https://pokeapi.co/api/v2/ability/${value}`) .then(response => response.json()) .catch((error) => console.log(error)); if (dataList) { for (const entry in dataList) { if (entry === 'flavor_text_entries') { for (const flavor in dataList[`${entry}`]) { if (dataList[`${entry}`][`${flavor}`]['language'].name === `${lang}`) { console.log(dataList[`${entry}`][`${flavor}`].flavor_text); break; } } } } } else { console.log('No data!'); } }; getDescription(4, 'en');

Codepen aquí .

about 4 years ago · Juan Pablo Isaza Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!