Discord.js 为什么在将反应添加到消息时不将其记录到控制台?

Discord.js 为什么在将反应添加到消息时不将其记录到控制台?,discord.js,Discord.js,将反应添加到消息时,当前代码未记录到控制台 我知道messageReactionAdd事件是通过单独调用下面的事件触发的,但是我不确定为什么不记录 //这使使用的事件更具可读性 常量事件={ 添加:“messageReactionAdd”, REMOVE:'messageReactionRemove', }; //此事件处理从用户选择的角色添加/删除用户 客户端.on('raw',异步事件=>{ 如果(!events.hasOwnProperty(event.t))返回; const{d:dat

将反应添加到消息时,当前代码未记录到控制台

我知道messageReactionAdd事件是通过单独调用下面的事件触发的,但是我不确定为什么不记录

//这使使用的事件更具可读性
常量事件={
添加:“messageReactionAdd”,
REMOVE:'messageReactionRemove',
};
//此事件处理从用户选择的角色添加/删除用户
客户端.on('raw',异步事件=>{
如果(!events.hasOwnProperty(event.t))返回;
const{d:data}=事件;
const user=client.users.get(data.user\u id);
const channel=client.channels.get(data.channel\u id);
const message=wait channel.fetchMessage(data.message\u id);
const member=message.guild.members.get(user.id);
const emojiKey=(data.emoji.id)“${data.emoji.name}:${data.emoji.id}”:data.emoji.name;
让反应=message.reactions.get(emojiKey);
如果(!反应){
//创建一个可以像普通一样通过事件传递的对象
const emoji=new emoji(client.guilds.get(data.guild\u id),data.emoji);
反应=新消息反应(消息,表情符号,1,data.user\u id==client.user.id);
}
如果(event.t=='ADD'){
控制台日志(“反应:添加”)
}
});

没有错误,控制台完全为空。

看起来,如果(!events.hasOwnProperty(event.t))返回,则使用
检查
event.t
是否等于其中任何一个,但当某些人在消息
event.t
中做出反应时,返回
message\u REACTION\u ADD
。所以它从一开始就回来了。 “只需更改
ADD
属性即可修复它”

但是,在
if(event.t=='ADD')
中,您检查
event.t
是否等于
ADD
,因此这不会执行,因为
event.p
返回
消息\u反应\u添加

“只需将
if(event.t=='ADD')
更改为
if(event.p=='MESSAGE\u REACTION\u ADD){


做这个来修复你的代码。

看起来,你正在使用
if(!events.hasOwnProperty(event.t))return;
来检查
event.t
是否等于它们中的任何一个,但是当一些人在消息
event.t
中做出反应时,返回
消息\u REACTION\u ADD
。所以它从一开始就返回了。 “只需更改
ADD
属性即可修复它”

但是,在
if(event.t=='ADD')
中,您检查
event.t
是否等于
ADD
,因此这不会执行,因为
event.p
返回
消息\u反应\u添加

“只需将
if(event.t=='ADD')
更改为
if(event.p=='MESSAGE\u REACTION\u ADD){

这样做可以修复您的代码