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

180
Visualizações
El recopilador de reacciones de Discord no recopila reacciones.

He leído la documentación de discord.js y he estado probando cosas que he estado leyendo, pero ninguna de ellas parece funcionar. El principal problema que tengo es que el cobrador afirma que no ha recopilado nada.

 if (message.content === 'poll') { let embedPoll = new Discord.MessageEmbed() .setTitle('😲 DaSquad 😲') .setColor('YELLOW') .addField('1:', 'name') .addField('2:', 'name2') .addField('3:', 'name3') .addField('4:', 'name4') .addField('5:', 'name5') .addField('6:', 'name6') .addField('7:', 'name7') .addField('8:', 'name8'); let msgEmbed = await message.channel.send({ embeds: [embedPoll] }); await msgEmbed.react('1️⃣'); await msgEmbed.react('2️⃣'); await msgEmbed.react('3️⃣'); await msgEmbed.react('4️⃣'); await msgEmbed.react('5️⃣'); await msgEmbed.react('6️⃣'); await msgEmbed.react('7️⃣'); await msgEmbed.react('8️⃣'); const filter = (reaction) => reaction.emoji.name === '1️⃣' || reaction.emoji.name === '2️⃣' || reaction.emoji.name === '3️⃣' || reaction.emoji.name === '4️⃣' || reaction.emoji.name === '5️⃣' || reaction.emoji.name === '6️⃣' || reaction.emoji.name === '7️⃣' || reaction.emoji.name === '8️⃣'; const collector = new Discord.ReactionCollector(msgEmbed, filter); console.log(collector.collected); }
about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

En lugar de la clase ReactionCollector , puede usar awaitReactions o createReactionCollector que está disponible en el objeto de mensaje que ha enviado ( msgEmbed ).

Si usa discord.js v13, los métodos awaitReactions y createReactionCollector aceptan un solo parámetro y el filter ahora es parte del objeto de options . (Consulte Cambios en v13 ). Por lo tanto, debe actualizar eso; pasar un solo objeto con el filter .

Otro error es que intenta leer las reacciones recopiladas ( collector.collected ) con un simple console.log justo después de crear una instancia del recopilador. En su lugar, debe configurar detectores de eventos y suscribirse a los eventos collect (y probablemente stop ).

Asegúrate de agregar las intenciones GUILD_MESSAGE_REACTIONS . Puede leer más sobre los colectores de reacción aquí .

Y una cosa más, podrías crear una matriz con todos los emojis con los que quieras reaccionar para hacerte la vida un poco más fácil.

Echa un vistazo al código a continuación:

 if (message.content === 'poll') { let embedPoll = new Discord.MessageEmbed() .setTitle('😲 DaSquad 😲') .setColor('YELLOW') .addField('1:', 'name') .addField('2:', 'name2') .addField('3:', 'name3') .addField('4:', 'name4') .addField('5:', 'name5') .addField('6:', 'name6') .addField('7:', 'name7') .addField('8:', 'name8'); let reactions = ['1️⃣', '2️⃣', '3️⃣', '4️⃣', '5️⃣', '6️⃣', '7️⃣', '8️⃣']; let msgEmbed = await message.channel.send({ embeds: [embedPoll] }); reactions.forEach((reaction) => msgEmbed.react(reaction)); const filter = (reaction) => reactions.includes(reaction.emoji.name); const collector = msgEmbed.createReactionCollector({ filter }); // code inside this runs every time someone reacts with those emojis collector.on('collect', (reaction, user) => { console.log(`Just collected a ${reaction.emoji.name} reaction from ${user.username}`); }); }
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