Discord Bot - 无法从 Intents 访问 FLAGS

Posted

技术标签:

【中文标题】Discord Bot - 无法从 Intents 访问 FLAGS【英文标题】:Discord Bot - Cannot access FLAGS from Intents 【发布时间】:2022-01-19 14:38:21 【问题描述】:

我开始编写个人机器人。我收到一个错误

TypeError: Cannot read properties of undefined (reading 'FLAGS')

我假设它无法访问 FLAGS。我不明白为什么,因为我安装了最新的 node 和 discord.js。我在 Discord Developer Portal 上的个人帐户上允许我的 Bot 的“特权网关意图”的所有权限。我遵循了这个教程:https://www.youtube.com/watch?v=Qc9uPgGmQ7I

这是我目前的代码:

require("dotenv").config();
const  Client, Intents  = require("discord.js")
const client = new Client(
  intents: [
    Intents.FLAGS.GUILDS,
    Intents.FLAGS.GUILD_MESSAGES
  ]
);

client.on("ready", () => 
  console.log(`Logged in as $client.user.tag!`);
);

client.on("interactionCreate", async interaction => 
  if (!interaction.isCommand()) return;

  if (interaction.commandName === "ping") 
    await interaction.reply("Pong!");
  
);

client.login(process.env.SPELL_BOT_TOKEN)

【问题讨论】:

你用的是什么版本的 DJS? 我更新了我的 DJS 版本,现在它可以工作了。 【参考方案1】:

这意味着您正在使用 Discord.js v11 或更早版本,其中没有意图,因此您可以将其更新到 v12 或更高版本:

使用npm uninstall discord.jsnpm install discord.js 重新安装模块。 使用npm install discord.js@dev 将其更新到最新版本或使用npm install discord.js@13.3.1 更新到特定版本。 在您的 package.json 文件中编辑模块的版本。

【讨论】:

这对我有帮助。现在它就像魅力一样工作。非常感谢!【参考方案2】:

我看到的第一个错误是你必须将对象传递给客户端类,你做了new Client(intents: [...])。应该是new Client( intents: [...] )

【讨论】:

您的答案可以通过额外的支持信息得到改进。请edit 添加更多详细信息,例如引用或文档,以便其他人可以确认您的答案是正确的。你可以找到更多关于如何写好答案的信息in the help center。 谢谢,我更正了。尽管如此,仍然有错误。即使我有最新的 Discord.js,我也会尝试 @Leau 的建议。 我还编辑了帖子中的代码,因此如果有人复制代码,他们希望不会出现错误。

以上是关于Discord Bot - 无法从 Intents 访问 FLAGS的主要内容,如果未能解决你的问题,请参考以下文章

Discord.py Intents 使我的机器人不响应任何内容

discord.py Intents.members 无法正常工作

Discord Bot 不会登录到服务器

如何修复 CLIENT_MISSING_INTENTS 错误(Discord.js)[重复]

模块“不和谐”没有属性“意图”错误

DiscordAPIError:无法使用 Discord 嵌入发送空消息