在 discord.js(Typescript)中使用 quick.db 获取值时遇到问题

Posted

技术标签:

【中文标题】在 discord.js(Typescript)中使用 quick.db 获取值时遇到问题【英文标题】:Having trouble getting values using quick.db in discord.js (Typescript) 【发布时间】:2021-03-15 20:36:16 【问题描述】:

我正在用打字稿编写一个不和谐的机器人,但似乎无法检索数据。我可以在 JSON.sqlite 文件中看到用户 ID,但我无法弄清楚为什么它在检索数据时返回 null。如果您想查看我的代码,我在 Pastebin 上有几个 cmets。

【问题讨论】:

如果链接中断,链接到其他网站会限制未来访问者的使用。请将您的代码缩减为 minimal reproducible example 并将其添加到问题正文中。 【参考方案1】:

线

console.log(economy.get(`$msg.author.id.money`))

错了。你可能想要

console.log(economy.get(msg.author.id).money)

原因: $ 正在制作一个模板字符串,它确实将变量放入一个字符串中,但是,您不需要这样做,因为首先传递值无论如何都会这样做。但是,您尝试从不存在的msg.author_id 访问money 属性。因此,它返回 null 并且 SQLite 找不到 null 条目。

【讨论】:

我试过了,我明白为什么你的是对的,但它仍然返回 null,我不明白为什么 你能告诉我console.log(msg.author.id) 输出什么吗? null 我不明白为什么它不起作用,因为我看到的是 id 然后是 json.sqlite 中包含钱的对象 如果 msg.author.id 为 null 则无法查找 ID 我是哑巴!我以为你说的是​​ ```console.log(db.get(msg.author.id)`` 但你说的返回了我的 id

以上是关于在 discord.js(Typescript)中使用 quick.db 获取值时遇到问题的主要内容,如果未能解决你的问题,请参考以下文章

discord.js / typescript / heroku / github:SyntaxError:不能在模块外使用导入语句

如何将消息发送到指定的频道 - Discord.js v13 TypeScript

Heroku DIScord.js Typescript - 机器人工作但构建卡在待处理

Discord.js 指南:Typescript 中的“Client<boolean>”类型上不存在属性“commands”

错误:应用程序(...):渲染没有返回任何内容。这通常意味着缺少返回语句 discord.js react typescript

Typescript 推导出泛型成员函数的返回类型