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

151
Visualizações
Necesitaba hacer una lista en Javascript, pero fue en vano

Estoy usando una API y quería extraer las URL de la API, para esto hice un código, pero solo aparece una url, daré un ejemplo del código JSON de la API. Sin mencionar que viene un título, luego viene en orden primero el título y luego la URL

 { "items": [ { "title":"YouTube", "url":"https://www.youtube.com/"}, { "title":"Google", "url":"https://www.google.com/"}, { "title":"Facebook", "url":"https://www.facebook.com/"}, { "title":"Github", "url":"https://www.github.com"}, { "title":"Microsoft", "url":"https://www.microsoft.com"} ] }

No son exactamente estas URL, las usé como ejemplo.

Quisiera extraer esta información y dejarla de la siguiente manera:

 [Title](Url)

Quiero que se vea así, porque el título se volverá azul y cuando hagas clic irá a la URL del sitio.

Mi código que no funcionó es este:

 let response, channel, info; try { response = await axios.get(url) channel = response.data info = channel.items[0] } catch (e) { return message.channel.send(`Error`) } let btn = new disbut.MessageButton() .setLabel("Site") .setStyle("url") .setURL("https://youtube.com") const embed = new MessageEmbed() .setColor("#ffff00") .setDescription(`[${info.title}](${info.url})\n`) await message.channel.send({ embed: embed, buttons: btn });

Este info.url es donde obtienes la URL e info.title es donde obtienes el título, solo que solo hay 1 problema, solo se necesita 1 título y 1 url, me gustaría que los tomes a todos y formes una lista en The Robot de discordia

Este es el resultado del código:

Pero quería que se viera así: Youtube Google Facebook Github Microsoft

Para que solo aparezca youtube necesito que muestres mínimo 1 y máximo 10. Y al hacer clic en cada título, será redirigido al sitio.

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

info solo se refiere a channel.items[0] , que es el primer elemento

Puede usar <Array>.map para mapear los elementos en su formato []() y luego <Array>.join para concatenarlos en una cadena separada por saltos de línea.

 .setDescription(channel.items.map(info => `[${info.title}](${info.url})`).join('\n'))
about 4 years ago · Juan Pablo Isaza Relatório

0

Debe formatear la matriz de items como una lista Markdown .

Asigne la matriz channel.items a una matriz de cadenas de elementos de lista, luego úna todo junto con líneas nuevas.

 .setDescription( channel.items.map(info => `* [${info.title}](${info.url})`).join("\n") )
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