函数"/>
TypeError:db.startsWith不是函数
我想要服务器上的用户排行榜,但是db.startsWith:((也许在新版本的quick.db中吗?
const Discord = require("discord.js");
const db = require("quick.db");
module.exports.run = async (bot, message, args) => {
let money = db.startsWith(`money_${message.guild.id}`, { sort: '.data'})
let content = "";
for (let i = 0; i < money.length; i++) {
let user = bot.users.get(money[i].ID.split('_')[2]).username
content += `${i+1}. ${user} ~ ${money[i].data} монет\n`
}
const embed = new Discord.MessageEmbed()
.setAuthor(`${message.guild.name} - Leaderboard`, message.guild.iconURL)
.setDescription(content)
.setColor("RANDOM")
message.channel.send(embed)
}
回答如下:[通过使用unpkg探索quick.db
软件包,我发现startsWith
函数以及其他一些不推荐使用的函数已在版本7.0.0-b22
中删除。来自support.glitch的答案中的信息支持这一点:
当我在打包
console.log(db)
后执行require
时,我得到了7.0.0b22
的一个版本,实际上,似乎该版本没有导出startsWith函数,而7.0.0b21
却导出了。如果您从quick.db
版本说明符的开头删除“ ^”,我认为您当前的代码可以使用,但似乎该功能已被弃用,并且我可能会找到that的其他解决方案代替。
和the official documentation。
[查看上述文档,除了通过all
方法获取数据库中的所有条目并手动将返回的数组筛选为所需的条目外,我找不到其他解决方法。由于文档没有说明从all
返回的数组的结构,因此我无法为您提供帮助-也许您自己进行的一些实验可能会向您显示该结构?
更多推荐
TypeError:db.startsWith不是函数
发布评论