You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Discord Bot v14代码报错:TypeError: Cannot read properties of undefined (reading 'get')

Discord.js v14 TypeError 修复方案

错误原因分析

报错TypeError: Cannot read properties of undefined (reading 'get')来自代码中这一段的逻辑错误:

let ap_user = interaction.guild.members.cache.then(
  embed.footer.get(client.user.tag)
);

存在两个核心问题:

  • interaction.guild.members.cache是Collection对象,不是Promise,不能使用.then()方法。
  • embed.footer返回的是EmbedFooter结构(或undefined),它没有.get()方法——你混淆了Collection的get()方法用法。

修复后的代码

如果你的需求是获取机器人自身在服务器中的成员对象,正确写法如下:

{
  let embed = new EmbedBuilder(interaction.message.embeds[0])
    .setColor(0x00FF00)
    .setFooter({ text: client.user.tag });

  interaction.message.edit({
    embeds: [embed],
    components: [],
  });

  // 直接从members.cache通过ID获取机器人成员对象
  let ap_user = interaction.guild.members.cache.get(client.user.id);
}

额外说明

  • 若要确保ap_user存在(避免缓存未加载的情况),可以改用fetch()方法:
    let ap_user = await interaction.guild.members.fetch(client.user.id);
    
    注意:使用await需要将外层函数标记为async。

内容的提问来源于stack exchange,提问作者Harshita

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.17 02:05:25