【问题标题】:Discord.js embeds not showing users correctlyDiscord.js 嵌入未正确显示用户
【发布时间】:2021-11-01 17:49:16
【问题描述】:

编辑:显然这是一个客户端问题,所以不是代码问题

我有一个应用系统,但用户名/标签有时无法正确显示 有什么办法可以解决这个问题还是不和谐的问题?

它只适用于某些成员,而且它使查找提交申请的用户有点不方便

有时看起来像这样(这是错误的)

有时看起来像这样

我会做类似的事情

        // Create our application, we will fill it later
        const application = new MessageEmbed()
          .setTitle("New Application")
          .setDescription(`This application was submitted by ${member}/${member.user.tag}`)
          .setColor("#ED4245");

但这感觉像是一件非常愚蠢的事情,并且可能会被比我更了解机器人的人杀死????

【问题讨论】:

    标签: discord discord.js


    【解决方案1】:

    您可以通过使用获取不和谐的用户ID并标记用户

    <@insert user id here>
    

    【讨论】:

    • 我知道,但有时应用程序上的 ID 会变成 @Unkown User 我有点猜测这只是一个限制,因为如果用户更改了他们的名称和标签,用户 ID 也会发生变化,但我可能是错误的,因为有时用户 ID 可以正常工作,但有时它会以未知用户的形式出现
    • 用户 ID 保持不变,不会更改。
    【解决方案2】:

    TL;DR : 使用您想到的方法绝对没问题,而且这只发生在公会无法使用用户或之前没有看到该频道的个人时发生这种情况

    通常,如果用户以前没有见过(频道访问权限和该行会不可用的条件也可能适用),查看频道的个人可能会像您的情况一样显示 ID,这是由于维护不和谐只有个人见过的用户(这是客户端而不是 Discord 本身)来克服这个问题,您只需在应用程序顶部添加个人的用户名

    <member>.user.tag
    

    正如你自己回答的那样!不过不用担心!这才是聪明的开发者会想到的!

    请确保如果用户有昵称,则使用&lt;@!userID&gt; 是一种更好的方法,在<@userID> vs. <@!userID> 中进行了解释,discord.js 会自动解析为您提及的内容,因此在您的情况下,它可能只是其中之一我上面提到的用户在客户端未缓存的情况。

    【讨论】:

    • 啊,这是有道理的,甚至没有想到这一点,但我会让我的员工知道他们需要滚动浏览用户列表,如果它只显示 ID(通常修复它我)
    • 正是因为那个用户正在为他们发生并被推送到他们的缓存中,很高兴我能提供帮助☺️
    • 谢谢顺便说一句真的很感激,我真的认为代码 lmao 有问题,我猜是因为我正在使用client.api 调用但显然不是哈哈(我认识一些人不推荐使用它,但我可能会在某个时候改变它)
    猜你喜欢
    • 2020-12-06
    • 2013-05-17
    • 1970-01-01
    • 2018-11-13
    • 2020-12-19
    • 2020-07-26
    • 2019-03-11
    • 2021-02-08
    • 1970-01-01
    相关资源
    最近更新 更多