【问题标题】:Why does the client in discord have an error that outputs: TypeError: [CLIENT_MISSING_INTENTS] in node.js?为什么不和谐的客户端有错误输出:TypeError:node.js中的[CLIENT_MISSING_INTENTS]?
【发布时间】:2021-10-13 02:27:38
【问题描述】:

我创建了一个目录,然后添加了一个 package.json 文件。我在 package.json 文件上安装了 dotenv 和 discord.js。我在目录中创建了一个 src 文件夹,然后将 bot.js 文件放在这个 src 文件夹中。代码是:

const Discord = require("discord.js");
const client = new Discord.Client();

client.on("ready", () => {

})

client.login(process.env.BOT_TOKEN);

我输入 node ./src/bot.js 并弹出一个错误。它说“node_modules\discord.js\src\client\Client.js:544 throw new TypeError('CLIENT_MISSING_INTENTS');"

是不是我做错了什么?

谢谢

【问题讨论】:

标签: node.js visual-studio-code discord.js


【解决方案1】:

Discord.js v13 中,必须将Intents 传递给新的Client 实例。因此,为了修复错误,请将所需的最低 Intents 作为参数传递给您的client

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

client.on("ready", () => {});

client.login(process.env.BOT_TOKEN);

要指定您希望机器人接收哪些事件,请首先考虑您的机器人需要操作哪些事件。然后选择所需的意图并将它们添加到您的客户端构造函数中,如下所示。

所有网关意图以及属于每个意图的事件都列在Discord API documentation 上。

【讨论】:

  • 非常感谢!我试过这段代码,但它给了我一个错误,并说“意图”没有定义。
  • 啊抱歉,那是因为我忘了从discord.js 导入Intents。我调整了我的答案。对不起...?‍♂️
  • 我从 discord.js 中导入了 Intents 并复制并粘贴了您的代码,但仍然出现错误。 UnhandledPromiseRejectionWarning: ReferenceError: AbortController is not defined.
  • 幸运的是你不是第一个遇到这个问题的人;)我已经就这个问题写了一个问题:Why am I getting a ReferenceError: AbortController is not defined in Discord.js v13?
猜你喜欢
  • 2020-07-11
  • 2021-12-31
  • 2023-01-13
  • 1970-01-01
  • 2022-06-19
  • 2021-01-06
  • 2021-10-14
  • 2021-08-23
  • 1970-01-01
相关资源
最近更新 更多