Discord.js 中 Users 和 GuildMember 的區別
Discord.js 區分了 Users 和 GuildMember,代表了 Discord 用戶的不同面向。
< ;h3>用戶 vs. GuildMembers
-
用戶: 全域 Discord 用戶,獨立於任何特定伺服器。
-
公會成員: 使用角色、權限和暱稱等伺服器綁定屬性來協調特定公會內的使用者。
代碼錯誤和原因
錯誤可能是由於在全域使用者上使用特定於公會的函數而引起的,例如:
- user.kick():在使用者上呼叫GuildMember 函數(由message.mentions.users 傳回)
- message.author.hasPermission():在使用者上呼叫GuildMember 函數(由message. author 回傳)
解決方案與解決方法
將使用者轉換為GuildMembers:
message.mentions.members 而不是message.mentions.users(首選)
- guild.member() 接受User 對象和ID
message.member 而不是message.authorguild.members.cache.get() 而不是client.users.cache.get()guild.members。 fetch() 而非client.users.fetch()presence.member 而非Presence.user將GuildMembers 轉換為使用者: GuildMember.user 屬性代表全域Discord 使用者
以上是如何在 Discord.js 中區分使用者和 GuildMembers?的詳細內容。更多資訊請關注PHP中文網其他相關文章!