所以我刚开始使用discord.js,并且一直在搜索,但是我真的找不到如何检测表情符号。回复一个对我有用的作品,如果我让它检测到“测试”之类的东西,它将以假笑的形式回复,但是将我到目前为止所看到的东西的不同部分放在一起之后,我提出了大约3种检测表情符号的解决方案这对我来说是最“合乎逻辑的”。他们都没有工作...如果有人可以帮助我,那就太好了!
const smirk = client.emojis.cache.get("760523853583351818");
if (message.content.toLowerCase() === "test") {
message.channel.send(`${smirk}`); //this returns "undefined"
}
if (smirk) {
if (message.content.startsWith("<:smirk:" + smirk.id + ">")) {
message.channel.send("<:smirk:760523853583351818>");
}
}
答案 0 :(得分:1)
Unicode表情符号(对每个人来说都是全球通用的表情符号,而不是为服务器定制的)在文本内容中编码,就像其他任何字符(“ A”,“ 4”,“&”或表情符号)一样。他们没有使用Discord的特殊括号表示法(如果使用了,则您提供的代码应该可以使用。未经测试,但看起来不错)。
您可以像这样为表情符号做您想做的事情:
client.on("message", message => {
if (message.author.bot) return;
if (message.content.startsWith('?')) {
message.channel.send('?');
}
});