我就在几分钟前注册了,因为有些事情真的困扰着我: 我有以下代码:
const Discord = require('discord.js');
const client = new Discord.Client();
client.on('guildMemberAdd', (member) => {
console.log('New member.')
const welcomeEmbed = new Discord.MessageEmbed()
.setImage(member.user.avatarURL())
.setColor('#e9fa2a')
.setAuthor("Mangoly Assistant")
.setTitle("New member in server")
.setDescription('Welcome <@${member.id}> to the server! If you are new, please be sure to check out or rules channel and some useful links. We are glad to be having you here, everyone wave hello! :wave:')
.setFooter('Created by kostis;#4464. || Mangoly Assistant')
client.channels.cache.get('825130442197434418').send(welcomeEmbed)
});
client.once('ready', () => {
console.log('Bot is ready')
})
client.login(nice try);
出于某种原因,当我离开并重新加入服务器时,嵌入根本没有发送到频道。我在控制台中没有收到任何错误。关于可能出了什么问题的任何想法?谢谢。 :)
答案 0 :(得分:0)
当您邀请机器人时,您需要启用“服务器成员意图”。转到 Discord Developer Portal > Bot > 滚动到底部 > 确保检查服务器成员的意图
您也应该能够在您的代码中手动启用它,但我知道如何去做。我觉得是这样的:
//Client declaration
const client = new Discord.Client({
ws: {
intents: ['GUILD_MEMBERS']
}
})
另外,快速的事情:要在字符串中使用 ${variableHere},它必须是带有反引号 (`) 的字符串,如下所示:
var a = 'abc';
var b = '${a}d' //returns ${a}d
var c = `${a}d` //returns abcs