无法读取未定义的 属性 'find',但我已经定义了它 discord.js
Cannot read property 'find' of undefined, but I've defined it discord.js
我对 javascript 非常陌生,如果我做错了什么请告诉我
client.on('message', message => {
if(!message.guild) return;
if (!message.content.startsWith(`${prefix}`) || message.author.bot) return;
if(message.content.startsWith(`${prefix}assignRole`)) {
var parts = message.content.split(" ");
const servguild = message.guild;
const member = message.mentions.members.first();
const role = servguild.role.find(r => r.name === parts[2]);
member.roles.add(role);
}
});
您的错误在这里:const role = servguild.role.find(r => r.name === parts[2]);
如控制台日志所示。
使用discord.js V12,你需要使用缓存,而且你的代码也有错别字。
此代码应该有效。
const role = servguild.roles.cache.find(r => r.name === parts[2]);
我对 javascript 非常陌生,如果我做错了什么请告诉我
client.on('message', message => {
if(!message.guild) return;
if (!message.content.startsWith(`${prefix}`) || message.author.bot) return;
if(message.content.startsWith(`${prefix}assignRole`)) {
var parts = message.content.split(" ");
const servguild = message.guild;
const member = message.mentions.members.first();
const role = servguild.role.find(r => r.name === parts[2]);
member.roles.add(role);
}
});
您的错误在这里:const role = servguild.role.find(r => r.name === parts[2]);
如控制台日志所示。
使用discord.js V12,你需要使用缓存,而且你的代码也有错别字。
此代码应该有效。
const role = servguild.roles.cache.find(r => r.name === parts[2]);