我在此附上我编写的代码,该代码应自动向登录我的服务器的任何新用户(我有一个名为 roll 的成员)授予一个 roll 并附上指向我看到的错误消息的链接,我很乐意如果有人可以帮助我。
这是错误链接:https://prnt.sc/109bik1
这是我的代码:
const Discord = require('discord.js');
const client = new Discord.Client();
const config = require('./config.json');
client.on('guildMemberAdd', (member) => {
let welcomeRole = member.roles.cache.find(role => role.name == 'member');
member.roles.add(welcomeRole);
})
client.login(/*Here is the TOKEN*/);
答案 0 :(得分:1)
这里的问题是您正在检查 GuildMember
加入时的角色集合,这很可能是空的,而不是服务器的。
const Discord = require('discord.js');
const client = new Discord.Client();
const config = require('./config.json');
client.on('guildMemberAdd', (member) => {
let welcomeRole = member.guild.roles.cache.find(role => role.name == 'member');
if (!welcomeRole) return console.log('Couldn\'t find the member role.');
member.roles.add(welcomeRole);
})
client.login(/*Here is the TOKEN*/);