我如何获得一个不和谐的机器人,以对自己的回复做出回应?

时间:2020-10-24 21:37:17

标签: javascript discord discord.js bots

预期结果:用户评论“水果”,机器人以“苹果”作为响应,并在自己的评论上留下苹果表情符号strong

实际结果:用户评论“水果”,机器人以“苹果”作为响应,并在用户的评论上留下苹果表情符号strong,而不是用户的评论

bot.on('message', msg => {

  if(msg.content === 'fruit'){

    msg.reply('apple').then();
    msg.react('?');

  }

})

我也尝试了以下方法:

 bot.on('message', msg => {

  if(msg.content === 'fruit'){

     msg.reply('apple').then(react('?'));

  }

})

但这会导致错误:“未定义反应”

提前谢谢

2 个答案:

答案 0 :(得分:2)

这非常容易解决。您所要做的就是在.then内使用箭头功能。

msg.reply('apple').then(m => m.react('?'));

答案 1 :(得分:2)

您需要在promise中使用消息回复的结果:

bot.on('message', msg => {
  if (msg.content === 'fruit') {
    msg.reply('apple').then((botMsg) => botMsg.react('?'));
  }
});

(您可以在then内创建消息,这意味着诺言成功了)