Discord.js - ReferenceError:未定义成员
Posted
技术标签:
【中文标题】Discord.js - ReferenceError:未定义成员【英文标题】:Discord.js - ReferenceError: member is not defined 【发布时间】:2020-09-19 04:27:27 【问题描述】:我遇到了这个问题,我正在尝试添加一个名为 Simon Says Player 的角色,有人可以帮忙吗??
bot.on('message', message =>
let args = message.content.substring(PREFIX.length).split(" ");
switch (args[0])
case 'join':
let person = message.guild.member
if (!person)
return message.reply('Couldn`t find the user!');
let mainRole = (role => role.name === "Simon Says Player");
member.addRole(mainRole.id);
message.channel.send('Successfully Entered The Game!!')
break;
)
【问题讨论】:
【参考方案1】:尝试message.member.addRole(mainRole.id)
而不是member.addRole(mainRole.id)
这应该适用于您的示例:
switch (args[0])
case 'join':
let person = message.member
if (!person)
return message.reply('Couldn`t find the user!');
let mainRole = message.guild.roles.cache.find(role => role.name === "Simon Says Player");
message.member.roles.add(mainRole);
message.channel.send('Successfully Entered The Game!!')
break;
【讨论】:
另外,您将person
定义为message.guild.member
,这是错误的:请改用message.member
。你可以找到Message
here的文档
TypeError: message.member.addRole 不是函数【参考方案2】:
member
实际上是undefined
,您没有说明预期的功能,但据我所知,您正试图为发送join
命令的成员赋予角色。
bot.on('message', message =>
let args = message.content.substring(PREFIX.length).split(" ");
switch (args[0])
case 'join':
let person = message.guild.member
if (!person)
return message.reply('Couldn`t find the user!');
let mainRole = message.guild.roles.cache.find(role => role.name === "Simon Says Player");
message.member.roles.add(mainRole.id);
message.channel.send('Successfully Entered The Game!!')
break;
)
【讨论】:
那么我该如何解决这个问题?我是编程新手 复制粘贴我的答案,你需要做的我已经写好了。 我刚刚根据您对另一个答案的评论编辑了我的评论,您使用的是 discord.js v12,因此您需要使用roles.add()
而不是 addRole()
(node:17088) UnhandledPromiseRejectionWarning: TypeError [INVALID_TYPE]: 提供的角色不是角色、雪花或数组或角色或雪花的集合。这是一个角色
你没有正确定义mainRole
,我帮你改好了以上是关于Discord.js - ReferenceError:未定义成员的主要内容,如果未能解决你的问题,请参考以下文章
Discord 错误错误 Discord.js 中的无效令牌
Discord 仅识别 discord.js 中的“ping”命令
错误“const Discord = require(discord.js) ^ ReferenceError: discord is not defined”
(Discord 机器人)当用户加入 Discord 服务器(discord.js)时,如何发送欢迎消息?