javascript - Discord.js role not getting added with no errors
问题描述
I'm trying to add a role to a user, but I’m getting no errors. I’m using a slash command.
let role = interaction.member.guild.roles.cache.find(r => r.name == "Amazing")
interaction.member.roles.add(role)
// interaction is from the interactionCreate event
解决方案
在 discord.js v13interaction.member
中没有添加角色的功能。我会获取guildMember
对象然后添加角色。
例子:
let guild = await client.guilds.fetch(interaction.guild_id)
let member = guild.members.cache.get(interaction.member.user.id);
let role = guild.roles.cache.find(r => r.name == "Amazing");
if (!role)
return console.log("the role doesn't exist");
member.roles.add(role);
完整示例:
const Discord = require("discord.js");
const client = new Discord.Client();
client.on("interactionCreate", async (interaction) => {
...
let guild = await client.guilds.fetch(interaction.guild_id)
let member = guild.members.cache.get(interaction.member.user.id);
let role = guild.roles.cache.find(r => r.name == "Amazing");
if (!role)
return console.log("the role doesn't exist");
member.roles.add(role);
});
client.login('Your-token');
推荐阅读
- shell - 查找由下划线连接的一个或多个单词组成的字符串
- javascript - 如何检查数组元素是否包含字符串?
- asp.net-core - 处理模型绑定/验证 (JSON.NET) 错误的最佳实践方法是什么?
- ios - 如何修复“NSInternalInconsistencyException”,原因:“无效更新:第 0 节中的行数无效。”
- ansible - Ansible 结构化输出,只得到一个特定的输出
- libvlc - 我如何使用 Vlc.DotNet 下载流视频?
- wordpress - WP_MEMORY_LIMIT 不会增加上传的可能性
- c# - 添加 ID 以查看指向外部架构的视图
- python - 如何对一般功能进行类型检查
- python - 模拟实例化的类变量