Bot Discord错误“无法读取未定义的属性'发送'”

时间:2020-11-10 13:25:31

标签: javascript node.js discord discord.js

我试图让机器人在有人对消息做出反应时发送私人消息,但给出错误消息“无法读取未定义的属性'发送'”

这是我的代码:

bot.on('raw', async dados => {
      if(dados.t !== "MESSAGE_REACTION_ADD") return
      if(dados.d.message_id != "775402467692642305") return

      let servidor = bot.guilds.cache.get("544551800930435096")
      let membro = servidor.members.cache.get(dados.d.user_id)

      let tts = dados.d.user_id

      try{
        
      if(dados.t === "MESSAGE_REACTION_ADD") {
        if(dados.d.emoji.name === "?"){
          bot.membro.send("eae")
        }
        }
      }catch (e){
          console.log(e)
        }


    })

1 个答案:

答案 0 :(得分:0)

此处代码的问题在于,您正在尝试将DM发送至不存在的bot.membro。另外,尝试使用bot.send()会给您一个错误,因为您试图DM bot应用程序甚至bot User DM,而这两种方法都是不可能的。您可以使用membro.send(),假设membro是一个用户,它将向他们发送消息。下面是代码

bot.on('raw', async dados => {
      if(dados.t !== "MESSAGE_REACTION_ADD") return
      if(dados.d.message_id != "775402467692642305") return

      let servidor = bot.guilds.cache.get("544551800930435096")
      let membro = servidor.members.cache.get(dados.d.user_id)

      let tts = dados.d.user_id

      try{
        
      if(dados.t === "MESSAGE_REACTION_ADD") {
        if(dados.d.emoji.name === "?"){
          membro.send("eae") // Sends msg to the user 
        }
        }
      }catch (e){
          console.log(e)
        }


    })