【问题标题】:Discord.js Welcome message shows user as a bunch of numbers instead of the actual usernameDiscord.js 欢迎消息将用户显示为一堆数字而不是实际的用户名
【发布时间】:2020-06-26 17:14:13
【问题描述】:
bot.on('guildMemberAdd', member =>{
const welcomeEmbed = new Discord.MessageEmbed()
.setTitle(`A new user has joined the server, everyone welcome ${member.user}!`)
const channel = member.guild.channels.cache.find(channel => channel.name === "welcome-channel");
if(!channel) return;
channel.send(welcomeEmbed)
});
【问题讨论】:
标签:
javascript
node.js
discord
discord.js
【解决方案1】:
这是因为您不能在嵌入的标题中提及某人,
所以它的作用是将其转换为 user_id 模式,例如 <@id_here>
使用用户类来提及某人为实际消息工作,例如:
message.chanenl.send(`${message.user} hey`);
这会提到用户,并用“嘿”回应,
但就像我之前在嵌入标题中所说的那样,您不能提及某人。
所以最好的选择是使用他们的用户名:
const welcomeEmbed = new Discord.MessageEmbed()
.setTitle(`A new user has joined the server, everyone welcome ${member.user.username}!`);
【解决方案2】:
如果您想提及他们,可以使用他们的 ID:
const welcomeEmbed = new Discord.MessageEmbed()
.setTitle(`A new user has joined the server, everyone welcome <@${member.id}>!`);