为什么我的欢迎信息不起作用(不和谐.js)



我试图使一个机器人,给用户成员角色,并发送一个简单的欢迎消息到聊天。然而,当有人加入时,什么也没有发生(甚至没有错误)。下面是我的代码:

client.on('guildMemberAdd', guildMember => {
console.log(guildMember);
let role = guildMember.guild.roles.cache.find(role => role.name == 'member');
guildMember.roles.add(role);

member.guild.channels.get('channelID').send(`welcome <@${guildMember.id}> dont forget to 
check the rules`);
});

是否激活了必要的标志?客户端需要以下意图,以便在有人加入服务器(bot位于

)时获得警报
const client = new Discord.Client({intents : ["GUILD_MEMBERS"]})

查看the official documentation

中的更多意图最后,它看起来像:

const Discord = require('discord.js')
const client = new Discord.Client({intents : ["GUILD_MEMBERS"]})
client.on('guildMemberAdd', guildMember => {
console.log(guildMember);
let role = guildMember.guild.roles.cache.find(role => role.name == 'member');
guildMember.roles.add(role.id);

guildMember.guild.channels.get('the channel id')).send(`welcome <@${guildMember.id}> dont forget to 
check the rules`);
});

还要确保你没有把client.on('guildMemberAdd',...)放在client.on('message',..)里面,它们需要分开。