尝试获取用户 ID 时“无法读取未定义的属性‘id’”

时间:2021-05-24 16:51:17

标签: javascript discord.js

在我的机器人开发过程中,我遇到了以下错误:

<块引用>

无法读取未定义的属性“id”

这是我目前的代码:

 const msg =  message.channel.send(gvg).then(async msg => {
  await msg.react('?'); 
  await msg.react('?');
  await msg.react('?');
  await msg.react('⚙️');

  const filter = (reaction) =>  ['?', '?', '?', '⚙️'].includes(reaction.emoji.name);
  
  const collector = msg.createReactionCollector(filter,{ time: 30000 }, {dispose : true });
  
  collector.on('collect', async (reaction, user ) => {
    const member = message.guild.members.cache.get(user.id);
    if (reaction.emoji.name === '?' ) { 
      member.roles.add('845380394513596446');
    } 

    if (reaction.emoji.name === '?') {
      member.roles.add('845380453597708299')
    }

    if (reaction.emoji.name === '?') { 
      member.roles.add('845380484964024330')
    }

    if (reaction.emoji.name === '⚙️') {
      member.roles.remove('845380484964024330')
      member.roles.remove('845380453597708299')
      member.roles.remove('845380394513596446')
    }
    
  });

  collector.dispose('remove', async (reaction, user,  ) => {
    const member = message.guild.members.cache.get(user.id);
    if (reaction.emoji.name === '?' ) { 
      member.roles.remove('845380394513596446');
    } 

    if (reaction.emoji.name === '?') {
      member.roles.remove('845380453597708299')
    }

    if (reaction.emoji.name === '?') { 
      member.roles.remove('845380484964024330')
    }

  });

})

我特此尝试实现,当收回一个反应时,role的{​​{1}}再次被移除。

0 个答案:

没有答案