【发布时间】:2022-01-09 10:51:04
【问题描述】:
我希望我的机器人在人们加入服务器时赋予他们特定的角色。但是我遇到了一些我不太明白的奇怪错误。
这是代码:
const { GuildMember, MessageEmbed } = require("discord.js");
module.exports = {
name: "guildMemberAdd",
/**
* @param {GuildMember} member
*/
async execute(member){
let role = member.guild.roles.cache.some(role => role.name === 'Member')
member.roles.add(role)
member.guild.channels.cache.get(process.env.WELCOME_MESSAGE_CHANNEL_ID).send({
embeds: [
new MessageEmbed()
.setTitle("Welcome! :smiley:")
.setDescription(`${member.toString()} has joined the server!\n
Thanks for joining. Head over to <#${process.env.RULE_CHANNEL_ID}> and verify yourself in <#${process.env.VERIFY_CHANNEL_ID}> to get access to all other channels.`)
.setThumbnail(member.user.displayAvatarURL())
.setColor("GREEN")
]
})
}
}
当有人加入时,我会收到以下错误消息:
TypeError [INVALID_TYPE]:提供的角色不是角色、雪花或 角色或雪花的数组或集合。
【问题讨论】:
-
role似乎未定义,执行console.log(role)并查看显示的内容
标签: javascript node.js discord.js bots