[英]How to find a discord.js user's permissions from a message mention?
我正在發出禁止命令,我需要檢查目標用戶是否具有管理員權限。 我試過了:
const user = message.mentions.users.first();
const userMember = message.guild.members.fetch(user)
但我收到一個錯誤: TypeError: userMember.hasPermission is not a function
有沒有辦法來解決這個問題?
.fetch()
返回一個 promise 所以你需要await
結果:
const userMember = await message.guild.members.fetch(user)
userMember.hasPermission()
您還可以從mentions
獲取成員而不是用戶:
const member = message.mentions.members.first()
member.hasPermission()
嘗試使用userMember.permissions.has
。 根據 Discord.JS 文檔( https://discord.js.org/#/docs/main/stable/class/GuildMember?scrollTo=permissions ),您需要這樣做。 好像在v12中已經改變了。
編輯:請查看 Zsolt 的回答,您還必須await
.fetch
,否則將無法正常工作。
const user = message.mentions.users.first();
const userMember = await message.guild.members.fetch(user)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.