首页 > 解决方案 > 当我们提到 discord.js v12 时,如何让我的机器人做出响应?

问题描述

我试图让我的机器人在被 ping 时做出响应,所以如果有人不知道前缀,他可以简单地 ping 机器人,他会用前缀回复。我已经尝试了几种方法,但它要么根本没有响应,要么开始一遍又一遍地发送相同的消息。这是我到目前为止所尝试的:

client.on('message', (message) => {
  if (message.content.includes('<@744284134397968425>')) {
    message.reply(`my prefix here is ${prefix}`)
    return
  };
});

完全没有反应(ID是对的)

client.on('message', (message) => {
  if (message.mentions.has(client.user)) {
    message.reply(`my prefix here is ${prefix}`)
    return
  };
});

根本没有回应,是的,我将机器人设置为客户端。

client.on('message', (message) => {
  if (message.mentions.has(client.user.id)) {
    message.reply(`my prefix here is ${prefix}`)
    return
  };
});

这一直在向频道发送垃圾邮件。当它没有响应时,我没有收到任何错误和/或崩溃。我该如何解决?提前致谢。

标签: javascriptnode.jsdiscorddiscord.js

解决方案


您应该查看MessageMentions.users收藏。

if (message.mentions.users.has(client.user.id) && !message.author.bot) {
  message.reply(`my prefix here is ${prefix}`)
  return
};

推荐阅读