【发布时间】:2020-11-28 22:47:35
【问题描述】:
所以我一直在尝试制作一个不和谐的机器人,当用户被踢(被工作人员)踢时,它会将嵌入发送到日志通道,但它不断抛出错误
Cannot read property 'channels' of undefined
这是我的代码:
let embed = new Discord.MessageEmbed()
.setColor("RANDOM")
.setAuthor(message.author.tag,message.author.avatarURL())
.setFooter("Made by frenchee1607")
.addField("Moderation:", "kick")
.addField("Mutee:", member.user.username)
.addField("Moderator:", message.author.username)
.addField("Reason:", reason)
.addField("Date:", message.createdAt.toLocaleString())
let Channel = client.channels.find(channel => channel.name == "mods-chat-logger");
if (Channel) {
Channel.send(message)
} else {
message.channel.send("Error sending embed to <#735829837306003456>");
}
我试过了
client.channels.cache.get("735829837306003456")
但即使这样也行不通。我问了我的一些朋友,他们都不知道,如果有人能帮助我,我将非常感激!
(我也应该说我是编程新手)
【问题讨论】:
-
该错误意味着您正在从
undefined值读取属性channels。您尝试从client读取channels,所以client是undefined。 (这似乎是正确的。您的代码中没有任何地方定义client是什么。 -
@Ivar 这只是代码的一部分,其余的与嵌入无关并将其发送到指定的频道,但我确实定义了客户端
const { client } = require("../index.js");就是它所说的(我很漂亮确定它不是问题,但如果是告诉我)。感谢您的评论! -
@frenchee1607 你必须删除更多代码。 Ivar 的说法是正确的,当你初始化“client”的值时,你需要观察它,看看为什么它是未定义的
-
@Deian 哦,我的错我应该添加我的全部代码吗? (请记住,其中一些是教程和我自己的混合)
标签: javascript discord discord.js