如何使用 Discord.js 提及角色?
How do I mention a role with Discord.js?
我正在制作一个机器人,我正在尝试 Ping 某个角色。这是相关代码:
let msga = msg.author;
msg.channel.send("@NES Found one!! " + msga);
@NES 是我正在尝试的角色 ping/mention。
只需添加左尖括号和右尖括号,并使用角色 id 进行提及。
msg.channel.send("<@id> Found one!! " + msga);
此答案对 discord.js 的旧版本有效(我相信 v11 及以下版本)但现在对 v12+ 无效,请使用 yummypasta 的解决方案用于较新版本。
不正确。您使用 <@id>
ping user,而不是 role.
如 this Github issue 中所述,对于角色,您必须使用 <@&id>
并且该角色必须可 ping 通。
所以,问题的正确代码应该是这样的:
msg.channel.send("<@&" + roleId + "> Found one!! " + msga);
或者,使用花哨的格式化字符串:
msg.channel.send(`<@&${roleId}> Found one!! ${msga}`);
是:
message.channel.send(`<@& id >`);
试试这个:
msg.channel.send(`<@&${'roleId'}> Found one!! ${msga}`);
我正在制作一个机器人,我正在尝试 Ping 某个角色。这是相关代码:
let msga = msg.author;
msg.channel.send("@NES Found one!! " + msga);
@NES 是我正在尝试的角色 ping/mention。
只需添加左尖括号和右尖括号,并使用角色 id 进行提及。
msg.channel.send("<@id> Found one!! " + msga);
此答案对 discord.js 的旧版本有效(我相信 v11 及以下版本)但现在对 v12+ 无效,请使用 yummypasta 的解决方案用于较新版本。
<@id>
ping user,而不是 role.
如 this Github issue 中所述,对于角色,您必须使用 <@&id>
并且该角色必须可 ping 通。
所以,问题的正确代码应该是这样的:
msg.channel.send("<@&" + roleId + "> Found one!! " + msga);
或者,使用花哨的格式化字符串:
msg.channel.send(`<@&${roleId}> Found one!! ${msga}`);
是:
message.channel.send(`<@& id >`);
试试这个:
msg.channel.send(`<@&${'roleId'}> Found one!! ${msga}`);