【发布时间】:2020-11-13 06:51:48
【问题描述】:
好的,我是 javascript 的新手,并且一直在使用 Discord.js 制作一两个 Discord Bot。我最近正在开发一个Medal Bot,如果某个人发出命令,它会向用户颁发奖章。它看起来大致如下:/awardmedal The Copper Cross (INSERT USER@ HERE) 每当我运行代码并执行任何奖牌命令时,都会出现以下内容:
Medals.js:21 var usertag = message.mentions.users.first().id;
^
TypeError: Cannot read property 'id' of undefined
我想知道是否有人可以提供帮助并告诉我应该如何解决它,谢谢。这是执行此操作的代码:
var prefix = "/"
client.on('ready', () => {
console.log("ZiloBot Loaded");
});
client.on("message", (message) => {
var usertag = message.mentions.users.first().id;
if (message.content.startsWith(prefix + "awardmedal " + "The Copper Cross " + usertag)) {
if (sjw.includes(message.author.id)) {
console.log("Awarding Copper Cross to " + usertag);
message.channel.send("Awarding Copper Cross to " + usertag);
};
};
client.login(mytokenissecret);
});
不要担心sjw 变量,它是在此之前的一段sn-p 代码中定义的。我的主要问题是id 没有定义。
【问题讨论】:
-
您确定邮件中包含提及吗?如果您尝试登录
message.mentions.users会显示什么?另外,/前缀已经被 Discord 使用,你不应该使用它,因为它可能会导致错误。
标签: javascript discord.js