javascript - 如何获取每个成员的权限
问题描述
var list = await client.guilds.cache.get(guild.id);
list.members.cache.array().forEach((member) => {
let Member = member.id;
if (guild.me.hasPermission("BAN_MEMBERS") && guild.me.roles.highest.rawPosition > Member.roles.highest.rawPosition) {
console.log(`--------------Members--------------\n${Member.tag} | can be banned`);
}
if (guild.me.hasPermission("BAN_MEMBERS") && guild.me.roles.highest.rawPosition < Member.roles.highest.rawPosition) {
console.log(`${Member.tag} | cant be banned`);
}
})
我已经尝试过这段代码,它处于就绪事件中,所以它告诉我可以禁止哪些用户,是的,公会已被定义为forEach,因此它会获取每个公会。
解决方案
这可能会起作用:
let guild = client.guilds.cache.get('…');
let info = guild.members.cache.map(m => `${m.user.tag} ${m.bannable ? 'can be banned' : 'cannot be banned'}`);
//info is array
推荐阅读
- python - 无法使用 tf.keras 顺序模型进行预测
- jestjs - 我可以获取 Jest 测试实例 ID 或上下文吗
- python - 如何合并两个数据框
- amp-html - 通过位置观察器为 amp-img 设置动画:剪辑路径失败...我是不是很笨?
- python - Django:在 mysql db 中保存 html 条目
- javascript - 一个对象怎么可能有一个属性,但访问它会导致 ReferenceError?
- spring-boot - 有没有办法在使用 SpringCloud OpenFeign 时为每个 Feign 实例创建不同的客户端?
- javascript - 让 Vue.js 同步隐藏和切换 css 类
- python - 使用 Apache Beam 以 CSV 格式将 BigQuery 结果写入 GCS 时出现编码问题
- angular - Angular v11 中的自动按钮单击功能