有没有办法监听特定 Discord 消息 ID 上的反应事件

Is there a way to listen for reaction events on a specific Discord message id

假设 A​​ 发送了一条消息,消息 ID 为“A1”。我怎样才能让我的 Bot 收听该消息“A1”上的 messageReactionAddmessageReactionRemove 事件?

您可以使用收集器。 message.createReactionCollector({ ... })

您可以在此处阅读有关收藏家的更多信息:https://discordjs.guide/popular-topics/collectors.html

编辑(评论)

如果消息 ID 没有改变,如果反应消息的 ID 不是您想要的,您可以 return 来自您的侦听器。

示例:

client.on('messageReactionAdd', (reaction) => {
  if (reaction.message.id !== 'A1') return
  // Your code ...
})
client.on('messageReactionRemove', (reaction) => {
  if (reaction.message.id !== 'A1') return
  // Your code ...
})

客户端发出 MessageReaction。 您可以使用 MessageReaction.message 获取消息 您可以使用 Message.id 获取它的 ID, 您将其与 'A1'.

进行比较

如果它不等于 'A1',您可以使用 return 关键字从侦听器中提早 return(因此,如果条件为真,您将不再执行任何代码那个函数)