【问题标题】:How to check if a command user has a certain role如何检查命令用户是否具有特定角色
【发布时间】:2020-11-14 20:03:48
【问题描述】:

我一直在尝试为朋友制作一个快速机器人,但是我遇到了一些我无法解决的问题。每当我尝试从消息中访问成员时,它都会返回 null。我正在尝试查找用户角色,以便检查他们是否具有特定角色。

这个问题的根源在于消息中的成员为空。因此我无法读取空值。

client.on('message', message => {

这就是我声明消息的方式,这里是消息的控制台日志。 https://pastebin.com/vrdg9Wvu

所以请有人帮我找到一种比较命令用户角色的方法。

【问题讨论】:

  • 运行命令时确保你不在dm频道内

标签: discord discord.js


【解决方案1】:

您使用的是哪个版本的 dicord.js? 我不知道这可能来自哪里,也许发送消息的用户在发送时离开了公会,否则我不知道出了什么问题。如果还是不行,可以考虑使用message.guild.members.cache.get(message.author.id).then(user => {}),这可能行得通。

【讨论】:

  • 如何查看你使用的 discord js 的版本?
  • 这在你的 package.json 文件中,你也可以输入 npm ls 它会显示用于这个项目的所有包及其版本。
  • discord.js@11.5.1
  • 也许更新你的 discord.js 可能会改变一些东西,discord.js v11 和 discord.js v12 之间有很多变化,最后一个版本是 12.4.1,但你必须改变代码中的一些行。见discordjs.guide/additional-info/changes-in-v12.html
猜你喜欢
  • 2019-04-04
  • 1970-01-01
  • 2021-06-11
  • 2010-12-22
  • 2019-06-16
  • 2021-10-25
  • 2021-10-10
  • 1970-01-01
相关资源
最近更新 更多