[英]Discord.js edit message after a reaction
我刚刚开始使用 javascript 尝试使用 discord.js 设置一个不和谐的机器人。 我想使用这个机器人作为组织突袭的“简单”方式。 所以人们只需要点击图标来登录突袭。
const Discord = require('discord.js');
const bot = new Discord.Client();
...令牌,前缀等。
bot.on('message', message => {
if (message.content.startsWith(PREFIX)) {
let args = message.content.substring(PREFIX.length).split(" ");
...一些检查命令的东西
message.channel.send('RaidID: ' + RaidID + '\nRaid: GOS \nRaid Leader: <@' + message.author.id + '> \nDate: ' + args[2] + '\nTime: ' + args[3]).then(messageReaction => {
messageReaction.react('✅');
});
到目前为止,代码工作正常。 它检查日期和时间就好了。 现在我想检测是否有人对消息做出了反应,并通过编辑消息在消息中提及他。 我只是不知道如何使用awaitReactions
。 或者,如果它甚至与awaitReactions
一起awaitReactions
。
您可以替换您当前的消息功能
message.channel.send('RaidID: ' + RaidID + '\nRaid: GOS \nRaid Leader: <@' + message.author.id + '> \nDate: ' + args[2] + '\nTime: ' + args[3]).then(messageReaction => {
messageReaction.react('✅');
});
有了这个功能:
message.channel
.send(
"RaidID: " +
RaidID +
"\nRaid: GOS \nRaid Leader: <@" +
message.author.id +
"> \nDate: " +
args[2] +
"\nTime: " +
args[3]
)
.then((messageReaction) => {
messageReaction.react("✅");
messageReaction.awaitReactions((args, user) => {
return !user.bot && args._emoji.name === "✅";
}, { max: 1 }).then(reaction => {
// SOMEONE REACTED
console.log('REACTION');
});
});
它添加了.awaitReactions
的功能.then
承诺的。 它会检查用户和表情符号 ✅ 是否做出了反应。 如果反应正确,则调用// SOMEONE REACTED
的部分。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.