Ошибка типа: не удается прочитать свойство ‘send’ неопределенного (reportschannel.send) discord.js

#discord #bots #discord.js

#Discord #боты #discord.js

Вопрос:

Я создаю команду отчета и получил эту ошибку

 reportsChannel.send(`**${message.author.username}** has reported **${target.user.username}** for 
                ^
**${reason}**.`);
TypeError: Cannot read property 'send' of undefined
  

Эта ошибка возникает только тогда, когда я нахожусь на другом сервере, отличном от канала, где хранятся все отчеты

вот мой код:

  switch(args[0]){
        case 'report':
            let target = message.mentions.members.first() || message.guild.members.cache.get(args[0]);
            if(!target) return message.channel.send('Please provide a user that you wish to report').then(m => m.delete({timeout: 15000}));

            var reason = args.slice(2).join(" ");
            if(!reason) return message.channel.send(`Please provide a reason for reporting **${target.user.username}**`).then(m => m.delete({timeout: 15000}));
   
            let reportsChannel = message.guild.channels.cache.find(x => x.id === "747697771594645566")
   
            if(args[1] === target, args[2] === reason){
                message.channel.send('Your report has been filled to the staff team. Thank you for reporting!')
                reportsChannel.send(`**${message.author.username}** has reported **${target.user.username}** for **${reason}**.`);
            }
        break;
      };
  

Есть идеи, как это исправить? Спасибо

Ответ №1:

Позвольте мне внести уточнение, на другом сервере вы не можете получить его гильдию через message.guild он вернется на сервер, на котором он включен… Итак, измените это:

 let reportsChannel = message.guild.channels.cache.find(x => x.id === "747697771594645566")
  

к этому:

 let reportsChannel = client.channels.cache.find(x => x.id === "747697771594645566")
  

Комментарии:

1. Вы также можете пропустить guild часть и просто сделать message.client.channels.cache.get()

2. Это здорово, я не проверял это, как правило, делаю вещи сложным способом xd.