Javascript defaultChannel.send不是一个函数

Javascript defaultChannel.send不是一个函数,javascript,discord,discord.js,Javascript,Discord,Discord.js,我有一些代码在添加bot时向服务器致意 client.on("guildCreate", guild => { const defaultChannel = guild.channels.find(c => c.permissionsFor(guild.me).has("SEND_MESSAGES")); defaultChannel.send(`Hi! Thanks for adding me to your server!`).catch(console.erro

我有一些代码在添加bot时向服务器致意

client.on("guildCreate", guild => {
    const defaultChannel = guild.channels.find(c => c.permissionsFor(guild.me).has("SEND_MESSAGES"));
    defaultChannel.send(`Hi! Thanks for adding me to your server!`).catch(console.error);
});  
它找到了一个可以向其发送消息并发送感谢消息的通道


当我运行上述代码时,我得到以下错误:
TypeError:defaultChannel.send不是一个函数
client.guild.channels
什么帮会?机器人加入的帮会。。。我不明白你的问题…它真的找到频道了吗
find
如果找不到要查找的内容,则返回
undefined
,这里就是这种情况。当您在
undefined
上调用
send
时,您会遇到该错误。我尝试使用
client.channels.get
,我得到这样一个结果:“无法读取未定义的属性'send',因此它似乎找不到频道。有人能帮忙吗?我会尝试记录
guild.channels
defaultChannel
来更仔细地了解幕后的情况。如果集合
guild.channels
中有一个bot有权发送消息的通道,但
defaultChannel
仍未定义,则您的
.find()
回调函数可能有问题。