【问题标题】:How to check if a user is in a guild如何检查用户是否在公会中
【发布时间】:2021-07-20 00:15:07
【问题描述】:

伙计们,我目前正在处理 quick.db 排行榜命令,但它返回全球排行榜,但我希望它只返回 message.guild 中的用户名称。

我目前的 lb 代码是这样的

const Discord = require('discord.js')
const db = require('quick.db')

module.exports.run = async (bot, message, args) => {
const ic = '<:mon:834428547064922142>'
    let money = db.fetchAll(message.guild.id).filter(data => data.ID.startsWith(`mon_`)).sort((a, b) => (b.data-a.data))
    money.length = 25;
    var finalLb = ""; 
    for (var i in money) {
      finalLb += `**${money.indexOf(money[i])+1}. ${(await bot.users.fetch(money[i].ID.split('_')[1])).username ? (await bot.users.fetch(money[i].ID.split('_')[1])).username : "Unknown User#0000"}** : ${ic} ${parseInt(JSON.stringify(money[i].data))}\n`;
    }
    const embed = new Discord.MessageEmbed()
    .setAuthor(`Leaderboard`, message.guild.iconURL())
    .setColor("RANDOM")
    .setDescription(finalLb)
    .setFooter(bot.user.tag, bot.user.displayAvatarURL())
    .setTimestamp()
    message.channel.send(embed);
}
module.exports.help = {
  name:"rich",
  aliases: [""]
}

【问题讨论】:

    标签: discord.js quick.db


    【解决方案1】:
    const member = message.guild.members.cache.get('user id');
      if(!member){
        // what to do if member is not provided
      }
    }
    

    【讨论】:

      【解决方案2】:

      尝试在你的代码中添加这个

      if(guild.members.cache.has("The UserID")){
          //Add the user in leaderboard
          //finalLb += `**${money. .........your code
      }
      

      【讨论】:

      • 我建议在上面打电话给guild.users.fetch()
      • 既然他有message,我以为他想改为message.guild
      • guild 作为指向他们想要从任何公会获取的指针
      猜你喜欢
      • 2021-04-27
      • 2021-10-28
      • 2017-06-20
      • 1970-01-01
      • 2020-12-02
      • 1970-01-01
      • 2016-05-29
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多