我如何提及 Discord.js 的角色?

RtH*_*30D 7 node.js mention discord.js

我正在制作一个机器人,我正在尝试 Ping 某个角色。这是相关的代码:

let msga = msg.author;
msg.channel.send("@NES Found one!! " + msga);
Run Code Online (Sandbox Code Playgroud)

@NES 是我试图 ping/提及的​​角色。

yum*_*sta 33

目前接受的答案是不正确。你ping一个用户使用<@id>,而不是一个角色

如此 Github 问题中所述,对于角色,您必须使用<@&id>并且该角色必须是可 ping 的。

因此,该问题的正确代码类似于:

msg.channel.send("<@&" + roleId + "> Found one!! " + msga);
Run Code Online (Sandbox Code Playgroud)

或者,使用花哨的格式化字符串:

msg.channel.send(`<@&${roleId}> Found one!! ${msga}`);
Run Code Online (Sandbox Code Playgroud)


Tho*_*ann 5

只需添加左右尖括号并使用角色 ID 进行提及即可。

msg.channel.send("<@id> Found one!! " + msga);
Run Code Online (Sandbox Code Playgroud)

这个答案对于旧版本的discord.js(我相信v11及以下)有效,但现在对v12+无效,请使用yummypasta的解决方案用于较新的版本。