Discord.js“.addRole”问题
Discord.js Issue with ".addRole"
所以,我在设置一个机器人时遇到了问题,该机器人将用户角色分配到包含表情符号的角色。示例:
const guildMember = message.member;
guildMember.addRole('<@&439191493169643521>');
我也试过:
// content.js
const guildMember = message.member;
guildMember.addRole(config.n);
// config.json
{
"n": "Fox"
}
我也尝试过不使用 config.json,只输入原始排名名称,但它总是不起作用。
这是控制台:
(node:15600) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Supplied parameter was neither a Role nor a Snowflake.
(node:15600) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Supplied parameter was neither a Role nor a Snowflake.
嗯,Fox
不是角色对象,也不是雪花 (ID)。
添加您需要的角色或对象或 ID。
如果你想使用ID,你需要将角色设为可提及,然后转义提及\@MyRole
,然后只需复制ID(它只是数字)并使用它:
guildMember.addRole('439191493169643521');
如果你想继续使用角色的名字,你可以这样做:
const role = message.guild.roles.find('name', 'MyRole');
guildMember.addRole(role);
所以,我在设置一个机器人时遇到了问题,该机器人将用户角色分配到包含表情符号的角色。示例:
const guildMember = message.member;
guildMember.addRole('<@&439191493169643521>');
我也试过:
// content.js
const guildMember = message.member;
guildMember.addRole(config.n);
// config.json
{
"n": "Fox"
}
我也尝试过不使用 config.json,只输入原始排名名称,但它总是不起作用。
这是控制台:
(node:15600) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Supplied parameter was neither a Role nor a Snowflake.
(node:15600) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.
UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): TypeError: Supplied parameter was neither a Role nor a Snowflake.
嗯,Fox
不是角色对象,也不是雪花 (ID)。
添加您需要的角色或对象或 ID。
如果你想使用ID,你需要将角色设为可提及,然后转义提及\@MyRole
,然后只需复制ID(它只是数字)并使用它:
guildMember.addRole('439191493169643521');
如果你想继续使用角色的名字,你可以这样做:
const role = message.guild.roles.find('name', 'MyRole');
guildMember.addRole(role);