Discord.js:member.guild.channels.find 不是函数

所以我现在正试图为我的不和谐机器人发出欢迎信息,但不知何故,我遇到了一个非常奇怪的问题,显然 members.guild.channels.find() 不是一个函数。


client.on('guildMemberAdd', member =>{


    const channel = member.guild.channels.find(channel => channel.name === "welcome");


    if(!channel) return;


    const welcomeEmbed = new Discord.MessageEmbed()

        .setColor(pink)

        .setAuthor('IdealBot', 'https://hypixel.net/attachments/ideal-png.1417277/', 'https://hypixel.net/threads/ideal-ideal-%E2%9D%96-level-52-%E2%9D%96-sweaty-skyblock-guild-%E2%9D%96-top-10-sb-guild-%E2%9D%96-splashes-%E2%9D%96-events-%E2%9D%96-recruiting.2500755/')

        .setTitle('Welcome!')

        .setDescription(`${member} just joined the discord! Make sure to read #rules!`)

        .setThumbnail(message.user.avatarURL)

        .setFooter('Note: The maximum amount of answers is 9.')

        .setTimestamp();


    channel.send(welcomeEmbed);

});

然而,当我尝试运行它时,出现错误:TypeError: Cannot read property 'find' of undefined


我很确定我以前用过这个,有人知道这个错误可能来自哪里吗?


慕运维8079593
浏览 84回答 3
3回答

暮色呼如

你输入了member.guild.channel.find. 将其更改为member.guild.channels.cache.find,因为它是前一段时间更改的。有关更多信息,请参阅文档。

蝴蝶不菲

嗯,我猜您尝试访问的属性不存在。看起来channels必须使用,而不是channel,见下文:const channel = member.guild.channels.find(channel => channel.name === "welcome");另请参阅每个 X 用户的欢迎消息示例,该属性也可以通过.channels

白板的微信

我也有这个问题,要解决它尝试 member.guild.channels.find()此外,除非您有括号,否则 message.user.avatarURL 将不起作用 - 即 message.user.avatarURL() 因为它是一个函数。让我知道这个是否奏效
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript