Discord.js 提到,创建数据字段

Discord.js 提到,创建数据字段,discord.js,Discord.js,我无法修复提及第三方用户的错误,错误始于“角色”和服务器登录日期,即创建帐户的日期 请帮忙 ... [cut] } else if (command === 'user') { let user = message.mentions.users.first() || message.author; const embed = new Discord.RichEmbed() .setAuthor(`Akirabot. Find of user.`)

我无法修复提及第三方用户的错误,错误始于“角色”和服务器登录日期,即创建帐户的日期

请帮忙

    ... [cut]

    } else if (command === 'user') {
    let user = message.mentions.users.first() || message.author;
    const embed = new Discord.RichEmbed()
        .setAuthor(`Akirabot. Find of user.`)
        .setColor(0x348fcd)
        .setTitle('')
        .addField(`Username`,`${user.username}`, true)
        .addField(`User id`,`${user.id}`, true)
        .addField(`Status`,`${user.presence.status}`, true)
        .addField(`Date of create account`, `${moment(user.createdAt).toString().substr(0, 15)}\n(${moment(user.createdAt).fromNow()})`, true)
        .addField("Currently Playing", user.presence.game || "Nothing.", true)
        .addField(`Join date to server`, `${moment(user.joinedAt).toString().substr(0, 15)}\n(${moment(user.joinedAt).fromNow()})`, true)
        .addField('Roles', `${user.members.roles}.`, true)
        .setFooter(`— Akirabot, made with love by setosh, 2019.`)
        .setTimestamp('')
        .setThumbnail(`${user.displayAvatarURL}`)
        message.channel.send({ embed });
我收到了这个错误消息

TypeError: Cannot read property 'roles' of undefined
(这是
message.atterences.users.first()
message.author
return)没有
members
属性,因此您试图访问不存在的内容

如果你想了解一个人的角色,你必须了解他。一种方法是:

const guildMember = message.guild.members.find(val => val.id === user.id);
然后,您可以执行
guildMember.roles
并根据自己的喜好使用它


例如:

let user = message.mentions.users.first() || message.author;
const guildMember = message.guild.members.find(val => val.id === user.id);
const embed = new Discord.RichEmbed()
  // Do whatever you want with the roles:
  .addField('Roles', `${guildMember.roles}.`, true)

给出一个示例代码,它是什么样子的?请以我的代码为例,它相当简单,只需声明并使用它即可。在答案中添加了一个示例。
让guildmember=message.guild.member(message.indications.users.first()| | message.guild.members.get(args[0])| | message.author)
它将从使用它的公会获取有关用户的信息,只需将需要从公会获取的内容更改为guildmember即可,例如:角色、创建日期、加入日期、,etcSplit代码和错误