Javascript 了解在Discord.JS中是否可以使用表情符号?

Javascript 了解在Discord.JS中是否可以使用表情符号?,javascript,discord,discord.js,Javascript,Discord,Discord.js,正如您在中所看到的,我的服务器中那些不和谐表情的下半部分是灰色的。这是因为我曾经有两个服务器提升。我正在为我的Discord.JS机器人制作一个表情选择器,它需要能够检测所有可用的表情符号。不幸的是,我不知道如何让我的机器人检测表情符号是否可用。我在这里也找不到任何有用的东西:。我当前的代码: let emojiurls = []; await client.emojis.array().forEach((item, index)=>{ emojiurls.push({"name"

正如您在中所看到的,我的服务器中那些不和谐表情的下半部分是灰色的。这是因为我曾经有两个服务器提升。我正在为我的Discord.JS机器人制作一个表情选择器,它需要能够检测所有可用的表情符号。不幸的是,我不知道如何让我的机器人检测表情符号是否可用。我在这里也找不到任何有用的东西:。我当前的代码:

let emojiurls = [];
await client.emojis.array().forEach((item, index)=>{
    emojiurls.push({"name":item.name,"url":item.url});
});
return res.json(emojiurls);

我可能需要使用类似于
client.emojis.available.array()
之类的东西,但这似乎不起作用。

在Discord.js的下一个版本(v11.5)中,会有一个


您可以通过运行
npm i discordjs/discord.js#11.5-dev
进行升级。 除非您使用的是不推荐使用的功能,否则此版本升级不应进行任何中断性更改

使用此新属性,您应该能够执行以下操作:

let emojiurls = [];
client.emojis.filter(emoji => emoji.available).forEach(emoji => { emojiurls.push({ "name": emoji.name, "url": emoji.url }); });
return res.json(emojiurls);
这可以简化为:

const emojiurls = client.emojis
    .filter(emoji => emoji.available)
    .map(emoji => { 
        return { "name": emoji.name, "url": emoji.url };
     });
return res.json(emojiurls); 

此外,由于discord.js没有更改开发分支中的版本字符串,它仍将使用11.5.1。

我不确定boost限制是否也适用于机器人(例如,机器人可能能够使用灰显的表情),我实际上需要一个webhook来发送表情,我已经测试过灰显的表情不能发送到Webhook。@ChrisSatchell发现普通的机器人也不能发送表情:不和谐的表情是以unicode字符发送的,而不是以
:emoji:
字符串发送的。要了解更多详细信息,请查看我并没有试图发送unicode表情符号!我可以问一下如何将开发版本添加到package.json中吗?不管怎样,我发现它是
“discord.js”:“github:discordjs/discord.js#11.5-dev”
根据我在谷歌上找到的:好的,很抱歉收到了垃圾评论,但尽管我将其添加到package.json中,并用npm卸载和重新安装了它,但它仍然安装了错误的版本:
+discord。js@11.5.1
npm i discordjs/discord.js#11.5-dev
也应该在package.json中更新它回答补充信息,我想你搞错了,顺便说一句,client.emojis.available.array()搞错了。