TypeError:无法读取未定义的“获取”函数(discord.js)

Posted

技术标签:

【中文标题】TypeError:无法读取未定义的“获取”函数(discord.js)【英文标题】:TypeError: Cannot Read function of 'fetch' of undefined (discord.js) 【发布时间】:2022-01-16 23:15:33 【问题描述】:

好的,所以基本上它向我显示了一个错误,即存在 fetch dosent 的属性我正在使用 replit 数据库作为平衡命令 (discord.js) Error Image

这里是命令文件:

const  match  = require("../functions.js")
const Database = require("@replit/database")
const ms = require('pretty-ms')
const db = new Database()
module.exports = 
  name: 'balance',
  description: 'ping cmd',
  permissions: [],
  aliases: ['bal'],
  async execute(client, message, args, Discord) 
    let user = message.mentions.users.first() ||
  client.users.cache.get(args[0]) ||
  match(args.join(" ").toLowerCase(), message.guild) || 
  message.author;

  let bal = await client.db.fetch(`money_$message.guild.id_$user.id.pocket`);
  if (bal === null) bal = 0;

  let bank = await client.db.fetch(`money_$message.guild.id_$user.id.bank`);
  if (bank === null) bank = 0;

  let TotalMoney = bank + bal;

  let moneyEmbed = new Discord.MessageEmbed()
  .setColor("#FFFFFF")
  .setDescription(`**$user's Balance**\n
  **Pocket:** $bal
  **Bank:** $bank
  **Total:** $TotalMoney`);
  message.channel.send(moneyEmbed)
    

那么我该如何解决这个错误

提前致谢

【问题讨论】:

【参考方案1】:

那么 client.db 不存在,这就是您的错误消息告诉您的内容。我建议你阅读文档https://www.npmjs.com/package/@replit/database

修复:

let bal = await db.get(`money_$message.guild.id_$user.id.pocket`);

【讨论】:

以上是关于TypeError:无法读取未定义的“获取”函数(discord.js)的主要内容,如果未能解决你的问题,请参考以下文章

TypeError:无法读取未定义的 guild.roles 的属性“获取”

TypeError:从 API 获取时无法读取未定义的属性(读取“地图”)

错误:未捕获 [TypeError:无法读取未定义 Jest 反应测试的属性“x”

使用 Sequelize 获取“TypeError:无法读取未定义的属性‘findAll’”

Angular TypeError:无法读取未定义的属性“名称”

TypeError:无法读取未定义的属性(读取“国家”)