Мое вложение показывает «Не определено» для ролей пользователя в моей команде info пользователя - PullRequest
1 голос
/ 09 апреля 2020

Я создаю диск-бот и решил добавить команду информации о пользователе. Я так и сделал, но проблема в том, что команда .setThumbnail не работает (поэтому я не вижу изображение) и что я хочу отобразить роли моих участников, что я и сделал с помощью функции member.roles. Но, как говорится в коде «undefined», вот мой код для справки. Я попытался использовать только пользователя, но все еще дает мне неопределенное значение в разделе «Роли пользователя на встраивании». Заранее спасибо всем, кто ответит!

const embed = new Discord.MessageEmbed()
var user = message.mentions.users.first();
var member = message.mentions.users.first(user);
if(!args[1]) return message.reply('Apologies! Please specify a particular member!');
    embed.setTitle('User Information')
    embed.addField('Username', user.username)
    embed.addField('User ID', user.id)
    embed.addField('User Tag', user.tag)
    embed.addField('User Roles', member.roles)
    embed.setColor(0x00FF93)
    embed.setThumbnail(user.displayAvatarURL)
    embed.setFooter('Generated by Salty!')
 message.channel.send(embed);
 break;

1 Ответ

1 голос
/ 10 апреля 2020

В разногласиях. js v12.x, user.displayAvatarURL - это функция. Посетите эту ссылку для получения дополнительной информации ...

embed.setThumbnail(user.displayAvatarURL())

Кроме того, member.roles - менеджер, чтобы получить роли участника, используйте member.roles.cache. Этот вопрос уже задавался здесь

.addField('Roles:', member.roles.cache.map(r => `${r}`).join(' | '))

Для создания учетной записи вы можете получить метку времени с помощью user.createdAt

.addField('Created at:', moment.utc(user.createdAt).format('dddd, MMMM Do YYYY, HH:mm:ss'))

Надеюсь, эта помощь!

...