【问题标题】:Script of welcome / goodbye to discord js bot Error欢迎/再见脚本不和谐 js bot 错误
【发布时间】:2021-11-20 07:43:47
【问题描述】:

他给了我这个欢迎/告别 Discord 错误的脚本,如果有人帮助我,他已经尝试了很多事情,我将非常感激,谢谢

module.exports = (client) => {
    const channelIdA = '718596514305277972'
    
    client.on('guildMemberAdd', (member) => {
       console.log("Se ha unido una nueva persona al servidor TPA")
       
         const messageA = `message`

          const channel = (channelIdA)
          channel.send(messageA)
       })
   }
   
   module.exports = (client) => {
    const channelIdB = '890891192995303424'
    
    client.on('guildMemberRemove', (member) => {
       console.log("Se ha salido una persona del servidor TPA")
       
         const messageB = `message`
          
          const channel = (channelIdB)
          channel.send(messageB)
    })
}

【问题讨论】:

    标签: javascript discord.js bots


    【解决方案1】:

    您正试图通过调用.send() 方法向频道发送消息。但是,您正在对字符串调用该方法。 send() 方法只存在于text based channels。要将消息发送到特定频道,请将您的消息发送代码替换为

    client.on("guildMemberAdd", members => {
     client.channels.cache.get("REPLACE WITH CHANNEL ID").send("message")
    });
    
    client.on("guildMemberRemove", members => {
     client.channels.cache.get("REPLACE WITH OTHER CHANNEL ID").send(" other message")
    });
    

    如果上述方法不起作用,请尝试以下操作: (无需缓存即可工作)

    client.on("guildMemberAdd", async (member) => {
     const channel = await client.channels.fetch("REPLACE WITH CHANNEL ID")
     channel.send(`${member.user.username}, welcome`)
    });
    
    client.on("guildMemberRemove", async (member) => {
     const channel = await client.channels.fetch("REPLACE WITH OTHER CHANNEL ID")
     channel.send(`${member.user.username} has left`)
    });
    

    【讨论】:

    • 非常感谢,但如果我想使用 或 $ {member.guild.memberCount},我该怎么做?当我离开服务器时,它说再见当我进入服务器时,它说再见并欢迎它并开始工作
    • channels.fetch() 返回一个 Promise,所以它没有 .send() 方法,你需要先解决它。
    • @ZsoltMeszaros 哎呀我现在就更新我的答案
    • @Bertogim 好像是个新问题。
    • 好的,谢谢,它工作正常 100% 也许将来我会问角色反应或其他问题,非常感谢
    【解决方案2】:

    您应该使用this 获取频道。如果您已经在缓存中拥有频道(机器人启动后频道中发生了一些事情),您也可以使用频道缓存。

    【讨论】:

      猜你喜欢
      • 2021-01-29
      • 1970-01-01
      • 1970-01-01
      • 2020-11-25
      • 2021-09-18
      • 1970-01-01
      • 2021-08-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多