无法读取未定义 discord.js 的属性“公会”

Posted

技术标签:

【中文标题】无法读取未定义 discord.js 的属性“公会”【英文标题】:Cannot read property 'guild' of undefined discord.js 【发布时间】:2021-05-30 22:12:27 【问题描述】:

我的代码:

module.exports = async (client, message) => 
    const guild = client.guilds.cache.get('815676619955503124');
    setInterval(() => 
        const channelgp = guild.channels.cache.get('815856763114487808');
        let myRole = message.guild.roles.cache.get('815855967773786113');
        console.log(`$goldpiston.size person with this role`);
        channelgp.setName(`gold piston owner: $goldpiston.toLocal`);
        console.log('Refreshing...');
    , 5000); 

还有错误:

C:\Users\user\Desktop\DiscordBot\counters\roles-counter.js:7
        let goldpiston = message.guild.roles.cache.get(roleID).members;
                                 ^

TypeError: Cannot read property 'guild' of undefined
    at Timeout._onTimeout (C:\Users\user\Desktop\DiscordBot\counters\roles-counter.js:7:34)
    at listOnTimeout (internal/timers.js:554:17)
    at processTimers (internal/timers.js:497:7)

一开始的代码是为了检查谁在线。我改变了它,看看谁有这个角色。

【问题讨论】:

这个错误意味着messageundefined。你是如何调用函数的?你会向它传递消息吗? 似乎是处理程序错误,你能发布你的处理程序代码吗? 【参考方案1】:

不,我只是打电话给客户。 这是 main.js,它位于根文件夹中。以前的代码在“counter”文件夹中。

const Discord = require('discord.js');
const client = new Discord.Client();
const memberCounter = require('./counters/member-counter');
const rolesCounter = require('./counters/roles-counter');
 
const prefix = '$';
 
client.once('ready', () => 
    console.log('2c5t is online!');
    memberCounter(client);
    rolesCounter(client);
)
 
client.on('message', message => 
    if(!message.content.startsWith(prefix) || message.author.bot) return;
 
    const args = message.content.slice(prefix.length).split(/ +/);
    const command = args.shift().toLowerCase();
 
    if(command === 'author')
    
        message.channel.send('Author is onhq');
        console.log('Command used!');
    
)
 
client.login('ODE1NjYzMDkzMTU2ODA2NjY2.YDvrcw.5XhiBf4SGFyU1hQkye152f2hmdc');

【讨论】:

以上是关于无法读取未定义 discord.js 的属性“公会”的主要内容,如果未能解决你的问题,请参考以下文章

Discord.js 的欢迎消息 - “无法读取未定义的属性 'get'”

discord.js 成员计数 - 无法读取未定义的属性“通道”

无法读取未定义的属性“发送”(Discord.js)

Discord.js 无法读取未定义的属性“发送”

discord.js TypeError:无法读取未定义的属性“发送”

无法读取未定义的属性“成员”(discord.js)