Discord.js报错TypeError: 无法读取undefined的属性'FLAGS'求解决
Discord.js 报错:TypeError: Cannot read properties of undefined (reading 'FLAGS')
问题代码
const { Client, Intents } = require('discord.js'); const client = new Client({ intents: [Intents.FLAGS.GUILDS] }); client.once('ready', () => { console.log('Ready!'); client.user.setPresence({ activities: [{ name: 'Discord' }], status: 'idle' }); }); client.login(process.env.token);
报错信息
TypeError: Cannot read properties of undefined (reading 'FLAGS') at Object.<anonymous> (/home/runner/discordjs-bot/index.js:5:47) at Module._compile (node:internal/modules/cjs/loader:1101:14)
原因分析
这个错误是因为你安装的Discord.js版本为v14及以上,而Intents.FLAGS是v13及更早版本的写法。v14版本对Intents的结构做了调整,不再通过FLAGS属性访问意图常量。
解决方法
方法1:适配Discord.js v14+版本
修改代码中的Intents引用,v14中使用GatewayIntentBits替代原有的Intents,且意图常量改为首字母大写的驼峰命名:
const { Client, GatewayIntentBits } = require('discord.js'); const client = new Client({ intents: [GatewayIntentBits.Guilds] }); client.once('ready', () => { console.log('Ready!'); client.user.setPresence({ activities: [{ name: 'Discord' }], status: 'idle' }); }); client.login(process.env.token);
方法2:降级到Discord.js v13版本
如果你想继续使用原有代码结构,可以执行以下命令降级依赖:
npm uninstall discord.js npm install discord.js@13
注意:v13版本已停止官方维护,后续可能出现兼容性问题,建议优先选择方法1。
内容的提问来源于stack exchange,提问作者StackUser100
相关产品推荐
相关产品推荐

