【问题标题】:Custom Emoji Discordjs v12 returning undefined自定义表情符号 Discordjs v12 返回未定义
【发布时间】:2021-02-28 19:04:42
【问题描述】:

我正在尝试使用 discordjs v12 获取自定义表情符号,并且我想这样做,以便无论机器人在哪个服务器上,它都能够发送自定义表情符号。这是我的代码b

const Discord = require('discord.js')
module.exports = {
    name: 'showemoji',
    description: 'shows my cool custom emoji!',
    cooldown: 0,
    execute(message, args, d) {
        const someEmoji = message.client.emojis.cache.get("778264742606798860");
        message.channel.send(`${someEmoji}`);
    }
};

但是,当它在聊天中发送时,它会显示“未定义”,并且不会在控制台中引发错误。我该如何解决这个问题?

【问题讨论】:

  • 顺便说一下,id有效。
  • 您是否尝试过登录message.client.emojis.cache 以查看表情符号是否存在?
  • 不,不过我会试试的。

标签: discord discord.js emoji


【解决方案1】:

只要您的机器人在带有表情符号的服务器中,您就可以简单地使用

// Checks if the bot has permission to user external emojis
if (message.guild.me.permissions.has('USE_EXTERNAL_EMOJIS')) {
    message.channel.send('<:EMOJI_NAME:778264742606798860>');
}

如果您的代码未在缓存中找到表情符号,则您无能为力。

【讨论】:

  • 每当我尝试使用它时,它只会打印 :EMOJI_NAME: 而不是实际的表情符号
  • 您是否已将 :EMOJI_NAME: 替换为您的表情符号名称?
  • 是的,我有,例如 <:silver:778290144272056360>,打印 :silver:
  • 天哪!我刚发现错误,原来我复制了错误的ID,我傻了!无论如何感谢您的帮助!
  • 哈哈,没问题
猜你喜欢
  • 2019-04-25
  • 2020-08-16
  • 2016-06-08
  • 2021-08-09
  • 2020-03-20
  • 2018-08-26
  • 2011-10-03
  • 2019-07-23
  • 2020-02-28
相关资源
最近更新 更多