TypeError:无法读取Object.module.exports.run中未定义的属性“角色”

时间:2020-04-29 11:17:05

标签: discord.js

我正在尝试执行一条tempmute命令,将数据保存到JSON,然后每3秒读取一次,以查看时间。我执行了静音命令,但收到错误TypeError: Cannot read property 'roles' of undefined。我删除了if(!message.member.roles.has("675376537272582154")) return message.channel.send('Bu komutu kullanabilmek için“?”静音预设rolüne sahip olmasınız.'),但这次却说TypeError: Cannot read property 'members' of undefined。有人可以帮我吗?

信息

Discord.js版本:v11.6.1

Node.js版本:12.0.0

代码

const { RichEmbed } = require('discord.js');
const fs = require('fs');

module.exports.run = async (message, args, bot) => {

  if(!message.member.roles.has("675376537272582154")) return message.channel.send(`Bu komutu kullanabilmek için \`「?」Mute Premission\` rolüne sahip olmasınız.`);

  let toMute = message.mentions.member.first() || message.guild.members.get(args[0])
  if(!toMute) return message.channel.send(`:x: Susturulacak kullanıcıyı etiketlemelisin!`)

  let timeMute = args[1]
  if(!timeMute) return message.channel.send(':x: Susturma süresini dakika cinsinden yazmalısın!')
  if(isNaN(args[1])) return message.channel.send(':x: Senin de bildiğin gibi süre sadece sayı olabilir!')

  let reason = args.slice(2).join(" ")
  if(!reason) return message.channel.send(':x: Susturma sebebini yazmalısın!')

  if(toMute.id === message.author.id) return message.channel.send(`:x: Kendini susturamazsın bea!`)
  if(toMute.roles.has('675376537272582154')) return message.channel.send(`:x: \`「?」Mute Premission\` rolüne sahip olan birini susturamazsın!`)

  let role = message.guild.roles.find(x => x.name === '「?」Muted')
  if(!role) return message.channel.send(':x: `「?」Muted` adlı rolü bulamıyorum!')

  if(toMute.roles.has(role.id)) return message.channel.send(':x: Bu kullanıcı zaten susturulmuş!')

  let modlog = message.guild.channels.find(c => c.name === '『?』punishment')
  if(!modlog) return message.channel.send(':x: Mod-Log kanalını bulamıyorum!')

  const embed = new RichEmbed()
  .setTitle('Susturma')
  //.setThumbnail(`${toMute.avatarURL}`)
  .setDescription(`**Susturlan Kişi: \`${toMute.tag}\`** \n **ID Numarası: \`${toMute.id}\`**\n **Susturan Yetkili: \`${message.author.tag}\`**\n **Süre: \`${timeMute}\`** **Sebep: \`${reason}\`** `)
  .setColor("#ff0000")
  .setFooter('Kurallara Uymayanın Sonu')
  .setTimestamp();

  bot.mutes[toMute.id] = {
    guild: message.guild.id,
    time: Date.now() + parseInt(args[1]) * 10000
  }

  await toMute.addRole(role)

  fs.writeFile("./mutes.json", JSON.stringify(bot.mutes, null, 4), err => {
   if(err) throw err;
   modlog.send(embed)
  })

}

module.exports.conf = {
  enabled: true,
  guildOnly: true,
  aliases: ['sustur'],
  permLevel: 0
};

module.exports.help = {
  name: 'mute',
  description: 'Sustur gitsin',
  usage: '!sustur @kullanıcı süre sebep'  
}


1 个答案:

答案 0 :(得分:0)

$ip = $request->ip(); public function login() { //.. auth()->user()->update(['trusted_device' => request()->ip()]); //.. } 很可能未定义,因为您的机器人正在接收DM消息。在继续您的代码之前,请检查消息是否来自公会:

member