如何删除Discord.js中特定用户的消息响应?

时间:2019-10-25 14:53:28

标签: javascript discord.js

我想删除特定用户对我收到的消息的反应。但是我无法使它正常工作(可能是因为我是个无法使用Javascript的人),所以如果我能得到一些帮助的话,那就太好了:)

我尝试环顾[this] Remove a users reaction from fetchMessage? - Discord JS等线程,但由于未定义map而返回。

我最近想到的是:

            var messageEmbed = message.channel.fetchMessage('637189841418846208')
                .catch(console.error);
                messageEmbed.reactions.remove(message.author.id)

我希望它删除反应,但出现错误“ UnhandledPromiseRejectionWarning:TypeError:无法读取未定义的属性'remove'”

1 个答案:

答案 0 :(得分:1)

“反应”是反应的集合,因此,您需要首先找到要查找的特定反应,此示例将获取消息中的第一个反应,并尝试从该反应中删除用户。

let messageEmbed = message.channel.fetchMessage('637189841418846208')
.catch(console.error);
messageEmbed.reactions.first().remove(message.author.id)

在集合中搜索特定反应的方法有很多,通常是.get()方法,这种情况下,女巫将根据其ID搜索反应。

messageEmbed.reactions.get("REACTION ID")

要查看所有可用方法,请参见CollectionReaction