使用参数 Discord.JS 按名称将用户添加到角色

Posted

技术标签:

【中文标题】使用参数 Discord.JS 按名称将用户添加到角色【英文标题】:Adding a user to a role by name using arguments Discord.JS 【发布时间】:2021-08-25 01:33:28 【问题描述】:

所以我目前正在尝试找出是否有一种方法可以通过键入变量名称来赋予用户角色。例如,'!role testrole',然后机器人会给他们 testrole 的定义。比如,'if(args[1] === "testrole")...'。 Testrole 可以这样定义,但实际的角色名称可以像 test 一样。您可以添加多个角色,它会添加它。 '!角色你好'等...? Discord.JS

【问题讨论】:

也许你想要eval。这会将一串 JS 代码转换为实际的 JS acide。这样就可以访问字符串中的变量名了。 【参考方案1】:

您可以尝试一些简单的方法,使用函数来查找角色名称。您可以执行以下操作:

 const roleName = message.guild.roles.cache.find(r => (r.name === args[1].toString()) || (r.id === args[1].toString().replace(/[^\w\s]/gi, '')));

这将检查提到的角色或给定的角色名称

【讨论】:

以上是关于使用参数 Discord.JS 按名称将用户添加到角色的主要内容,如果未能解决你的问题,请参考以下文章

Discord.js :将特定服务器上的角色添加到 DM 机器人的用户

为用户添加角色 discord.js

Discord.js 服务器欢迎

如何在 Discord.js 中按名称查找表情符号

如何让 discord.js 机器人在不包含前缀和命令名称的情况下重复用户的消息?

Discord.js-commando 缺少参数回复