You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord机器人启动报错:Cannot read properties of undefined (reading 'client') 求助排查

排查Discord机器人报错:Cannot read properties of undefined (reading 'client')

嘿,我来帮你搞定这个问题!你遇到的这个错误完全是代码里的几个小拼写和导入细节出错了,咱们一步步修正:

错误原因拆解

报错Cannot read properties of undefined (reading 'client')本质上是两个问题:

  1. 你导入discord.js的方式不对,导致discord这个变量根本不存在
  2. 客户端实例化时的类名拼写错误(大小写问题)

修正后的完整代码

const { Client, Intents } = require('discord.js');
// 注意:discord.js v13+必须指定必要的意图,否则机器人无法正常运行
const client = new Client({ intents: [Intents.FLAGS.GUILDS] });

client.on('ready', () => {
    console.log(`成功登录:${client.user.tag}`);
});

client.login("你的机器人令牌");

关键修正点说明

  • 导入语句修正:原代码里const {discord, Intents} = require('discord.js');是错误的,discord.js导出的客户端类是Client(首字母大写),正确的解构导入应该是{ Client, Intents }
  • 客户端实例化修正:原代码new discord.client()里,discord变量不存在,而且客户端类名应该是Client(首字母大写),所以改成new Client(...)
  • 添加必要意图:discord.js v13及以上版本要求必须声明机器人需要的权限意图,这里添加了GUILDS意图,是触发ready事件的基础;如果你的机器人需要处理消息,还需要添加GUILD_MESSAGES意图(对应Intents.FLAGS.GUILD_MESSAGES)

最后提醒:记得把代码里的"你的机器人令牌"替换成你从Discord开发者平台获取的真实令牌,绝对不要把令牌公开分享给任何人!

内容的提问来源于stack exchange,提问作者Komiš

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.27 20:34:06