Discord.js API 中的权限?
Permissions in Discord.js API?
我正在用 discord 编写一个 Discord 机器人。js/node(我是新手)。
我试图设置一个权限系统,您需要一个特定的角色才能使 if
语句 return 为真并允许用户使用命令或其他东西。我试过了(这只是其中的一部分):
if(message.author.roles.includes('role_id') {
COMMANDS
}
但它只是让我在控制台中出错(很明显)
如果你们中有人知道如何正确设置权限系统,我们将不胜感激!
用户有一个hasRole
方法:http://discordjs.readthedocs.io/en/8.2.0/docs_user.html
hasRole(role)
Shortcut of client.memberHasRole(member, role)
See client.memberHasRole
其中 link 到此:http://discordjs.readthedocs.io/en/8.2.0/docs_client.html#memberhasrole-member-role
memberHasRole(member, role)
Returns if a user has a role
你试过这样做吗?
if (!message.member.roles.some(r=>["role_name"].includes(r.name)) )
return;
这将阻止所有用户使用该特定命令,除非他们具有指定的角色。
要使用 if
条件实现此目的:if(message.member.roles.has(
[role_id]
))
其中 [role_id] 是一个字符串(否则它总是 return false)
我正在用 discord 编写一个 Discord 机器人。js/node(我是新手)。
我试图设置一个权限系统,您需要一个特定的角色才能使 if
语句 return 为真并允许用户使用命令或其他东西。我试过了(这只是其中的一部分):
if(message.author.roles.includes('role_id') {
COMMANDS
}
但它只是让我在控制台中出错(很明显)
如果你们中有人知道如何正确设置权限系统,我们将不胜感激!
用户有一个hasRole
方法:http://discordjs.readthedocs.io/en/8.2.0/docs_user.html
hasRole(role)
Shortcut of client.memberHasRole(member, role)
See client.memberHasRole
其中 link 到此:http://discordjs.readthedocs.io/en/8.2.0/docs_client.html#memberhasrole-member-role
memberHasRole(member, role)
Returns if a user has a role
你试过这样做吗?
if (!message.member.roles.some(r=>["role_name"].includes(r.name)) )
return;
这将阻止所有用户使用该特定命令,除非他们具有指定的角色。
要使用 if
条件实现此目的:if(message.member.roles.has(
[role_id]
))
其中 [role_id] 是一个字符串(否则它总是 return false)