尝试建立嵌入时出现“无法读取未定义的属性'用户名'”

时间:2019-05-04 08:36:40

标签: discord.js

我正在创建一个不和谐的机器人,这段代码在下面显示了错误,而不是发送嵌入代码。

case 'embed':
  const embed = new Discord.RichEmbed()
    .addField('Player Name:', message.author.username);
  message.channel.sendEmbed(embed);
  break;
  

无法读取未定义的属性'username'”    控制台错误

1 个答案:

答案 0 :(得分:1)

有一些可以改进的地方。首先,RichEmbed已过时。您可以使用MessageEmbed发送嵌入内容。其次,对于v12,它确实要求您声明字段变量。第三,不建议使用sendEmbed函数,使用.send(embed)是更新的方法。考虑到这些要点,下面是代码

const MessageEmbed = require('discord.js') // This allows you to not have to put 'Discord.' before MessageEmbed

case 'embed':
  const embed = new MessageEmbed()
    .addField(name: 'Player Name:', value: `${message.author.tag}`, inline: true); // ${var} allows the embed to see the username and put it as plain text
  message.channel.send(embed);
  break;