如何让机器人对自己做出 2 种不同的反应

时间:2021-05-25 05:51:05

标签: javascript discord discord.js

我试图让机器人用拇指向上和向下对自己做出反应。这是我的代码:

const args = message.content.split(' ');
if (message.content.includes('<poll')) {
  message.delete()
  let embed = new Discord.MessageEmbed()
  .setTitle(`Poll In ${message.guild.name}`)
  .setDescription(args.slice(1).join(' '))
  .setFooter(`Started by ${message.author.username}`)
  .setColor('#ffc0cb')

  message.channel.send(embed)
  .then(sentMessage => sentMessage.react('?'))
  .catch(console.error)
}

我尝试使用 .then 两次,但没有用。

1 个答案:

答案 0 :(得分:0)

试试这个:

message.channel.send(embed)
   .then(sentMessage => {
      sentMessage.react('?')
      sentMessage.react('?')
});

如果您希望您的机器人按顺序做出反应,您有两个选择:

选项 1:

使用async / await

message.channel.send(embed)
   .then(sentMessage => {
      // Don't forget to make your function async, otherwise it won't work
      await sentMessage.react('?')
      await sentMessage.react('?')
});

选项 2:

.then()

message.channel.send(embed)
   .then(sentMessage => sentMessage.react('?'))
   .then(sentMessage => sentMessage.react('?'))
});

参考: