javascript - 在较新版本的 discord.js 中替换 guild.roles.find()
问题描述
我一直在 discord.js 中编写一个不和谐机器人,我需要一种通过名称识别角色的方法,所以我在文档中查找了如何做到这一点,但找不到我正在寻找的确切内容(我对javascript很陌生,所以我可能已经看到了我要找的东西,但只是不明白。这也是为什么代码可能会让你畏缩的原因。)我在网上查了如何做到这一点,每个人都说要使用guild.roles.find() 函数,所以我把它放到我的代码中,当它不起作用时。然后我在文档中查找 guild.roles.find() 函数,它根本不存在,让我相信它已被删除。如果有人知道此问题的解决方案,将不胜感激。
let role = message.guild.roles.find(role => role.name === stringSplit[i]);
(stringSplit[i]
是用户输入的角色名称。)
解决方案
如果你想获得某个公会的所有角色,你可以做到
const roles = message.guild.roles.cache.array();
现在您可以过滤这些角色以使用 name 属性获得您想要的角色。
message.guild.roles.cache
返回一个集合:您可以在这里查看所有可用的方法:https ://discord.js.org/#/docs/collection/master/class/Collection?scrollTo=find
推荐阅读
- ios - 没有读取 iCloud Drive 文件的权限
- python - 使用适用于 Python 的 Google Cloud 客户端库从存储桶下载文件
- asp.net-core - 无法访问 asp.net core webapi 中的删除端点
- sql - SQL如何按状态选择交易金额最高的客户
- c# - 如何最好地避免可能的多重枚举,但同时保持异步?
- powershell - 使用 powershell 功能将 DHCP 从 DOMAIN Server 导入 WORKGROUP Server
- ruby - 如何解决 URI.encode_www_form({"q": "ruby"}) 中的 sorbet 强类型检查器错误“此代码未键入”
- android - Android Sticky-footer:将页脚视图与表格对齐,直到达到屏幕大小,然后变为固定。在底部
- dafny - Dafny 要求字符串的前提条件不仅是空格
- sql - 如何找到不以元音开头和结尾的城市名称