Javascript I';我在军衔指挥上有困难

Javascript I';我在军衔指挥上有困难,javascript,firebase-realtime-database,discord.js,Javascript,Firebase Realtime Database,Discord.js,我正试图用Firebase实时数据库制作一个rank命令。首先,我的条目有问题,但我相信我解决了。但是现在我遇到了“没有足够的用户”的问题,这条消息一直在发送。但除此之外,如果我删除它,该命令会起作用,但它表示所有用户都没有钱。有人知道怎么了吗 Json文件示例: { "Users": { "12345678912345678" : { "Economy" : { money: 500

我正试图用Firebase实时数据库制作一个rank命令。首先,我的条目有问题,但我相信我解决了。但是现在我遇到了“没有足够的用户”的问题,这条消息一直在发送。但除此之外,如果我删除它,该命令会起作用,但它表示所有用户都没有钱。有人知道怎么了吗

Json文件示例:

 {
  "Users": {
    "12345678912345678" : {
      "Economy" : {
        money: 500
      }
    },
    "98989898989898989" : {
      "Economy" : {
        money: 100
      }
    },
    "45454545454545454" : {
      "Economy" : {
        money: 9700
      }
    }
  }
}
命令:

require('firebase').default.database().ref('Users').once('value').then(money => {

  let entries = Object.entries(money.val());

  entries = entries.filter(o => o[1].Economy.money);
  entries.sort((a, b) => b[1].Economy.money - a[1].Economy.money);

  var page = args[0]
  if(!page || isNaN(page) || page > 9) {
    page = 0
    num = 10
  } else {
    page = (args[0] - 1)
    num = page + 10
  }

  if(entries.length < num) return message.channel.send(({embed: {description: `:x: There are not enough users for this page!`, color: 'RED'}}));

  var x = entries.map(([key, value], i) => (i + 1) + ". " + (client.users.cache.get(key) ? client.users.cache.get(key).tag : "Unknown#0000") + "\nMoney: " + (value["money"] || 0) + "\n\n").slice(page, num).join("")

  const embed = new Discord.MessageEmbed()
  .setTitle("Global Ranking")
  .setDescription(x)
  .setFooter(`Page ${(!args[0] || isNaN(parseInt(args[0]))) ? 1 : args[0]}`)

  message.channel.send(embed)
})
require('firebase')。default.database().ref('Users')。once('value')。然后(money=>{
让entries=Object.entries(money.val());
entries=entries.filter(o=>o[1].Economy.money);
条目.sort((a,b)=>b[1].Economy.money-a[1].Economy.money);
变量页=args[0]
如果(!第| |页isNaN(第| |页>9页){
第页=0
num=10
}否则{
页面=(参数[0]-1)
num=第+10页
}
if(entries.length(i+1)+(client.users.cache.get(key)?client.users.cache.get(key)tag:“Unknown#0000”)+”\n货币:+(value[“money”]| 0)+“\n\n”).slice(page,num.join(“)
const embed=new Discord.MessageEmbed()
.setTitle(“全球排名”)
.setDescription(x)
.setFooter(`Page${(!args[0]| | isNaN(parseInt(args[0])))?1:args[0]}`)
message.channel.send(嵌入)
})

你的数学做得对吗?我会重新检查页面和数值计算
num=page+10
=1+10=11第1页,2+10=12第2页等等。我认为这是正确的。我对这个页面系统了解不多,但一个朋友给了我,它工作正常。问题是,bot没有为每个用户提供正确的金额。我相信问题出在变量x上。我设法解决了它!我将
value[“money”]
更改为
value.Economy.money
。在“用户不足”消息中,我将
if(entries.length
更改为
if(entries.length
现在一切都正常了:D