我正在尝试制作一个机器人,当一个人输入!join choiceOutOfVariousRoles时,它将在服务器中添加一个角色。我当前使用的是不和谐版本12。我的错误消息是:
fn = fn.bind(thisArg);
尽管尝试了各种技术,但我无法使代码正常工作。
const Discord = require('discord.js');
const client= new Discord.Client();
const token = process.env.DISCORD_BOT_SECRET
client.on('ready', () => {
console.log("I'm in");
console.log(client.user.username);
});
client.on('message', msg => {
if (msg.content.toLowerCase().startsWith("!join"))
{
var args = msg.content.toLowerCase().split(" ")
console.log(args)
if (args[1] === 'sullen')
{
msg.channel.send('You have successfully joined Sullen!')
const sullenRole = msg.guild.roles.cache.find('name','Sullen')
msg.member.addRole(role.id)
}
}
});
client.login(token)
**编辑:修复了每个人的发言,现在我需要做的就是更新权限,(我的朋友必须这样做,因为它不是我的机器人),我应该一切都很好。谢谢大家! :D
答案 0 :(得分:0)
discord.js经常引入重大更改,而v12也不例外。您需要确保找到最新的代码,否则它将无法正常工作。 GuildMember#addRole
已移至GuildMemberRoleManager#add
,这意味着您必须使用msg.member.roles.add(sullenRole)
。