Discord.js user.send() 中的 ReactionCollector 不是函数
Posted
技术标签:
【中文标题】Discord.js user.send() 中的 ReactionCollector 不是函数【英文标题】:ReactionCollector in Discord.js user.send() is not a function 【发布时间】:2022-01-15 22:59:35 【问题描述】:我为我的 Discord Bot 创建了一个 ReactionCollector,但如果我想向用户发送消息,则会出现错误 user.send() is not a function。我的 Discord.js 版本是 v11。
const filter = (reaction, user) =>
return validEmojis.includes(reaction.emoji.name) && user.id !== bot.user.id;
;
const collector = message.createReactionCollector(filter)
collector.on('collect', (reaction, user) =>
if (reaction.emoji.name === "????")
user.send("hello")
);
ReactionCollector中反应参数的日志输出:
<ref *1> MessageReaction
message: Message
me: true,
count: 2,
users: Collection(1) [Map]
'342000434514493440' => User
id: '342000434514493440',
username: 'TFS_NerzDesmony',
discriminator: '7832',
avatar: 'b05491a41564a2f32811b55d4ea44103',
bot: false,
lastMessageID: null,
lastMessage: null
,
_emoji: ReactionEmoji
reaction: [Circular *1],
name: '????',
id: null,
animated: false
希望有人能帮我解决这个问题
【问题讨论】:
Discord.js 版本? discord.js 版本为 v11 Discord.js v11 使用元素和收集器两个参数,而不是反应和用户。 有没有其他方式向用户发送消息? 记录反应并在您的问题中添加其内容的屏幕截图 【参考方案1】:根据MessageReaction 将user.send("hello")
替换为reaction.users.first().send("hello")
,因为您使用的是Discord.js v11。
【讨论】:
以上是关于Discord.js user.send() 中的 ReactionCollector 不是函数的主要内容,如果未能解决你的问题,请参考以下文章
Discord 仅识别 discord.js 中的“ping”命令
Discord.py 中的 Discord.js 的 `user.tag` 和 `user.username`?