msg.guild.channels.find(c => c.id == "693088078168064051").send(tempVars("absence_review"))
.then(function(message) {
const approved = message.react("✅")
.then(() => message.react("❌"))
.catch(error => {});
const filter = (reaction, user) => {
return ['✅', '❌'].includes(reaction.emoji.name) && user.id === message.author.id;
};
message.awaitReactions(filter, {
max: 1
})
.then(collected => {
const reaction = collected.first();
if (reaction.emoji.name === '✅', reaction.user.bot === false) {
message.reply('reacted with yee.');
} else if (reaction.emoji.name === '❌', reaction.user.bot === false) {
message.reply('reacted with nah dude.');
}
})
.catch(collected => {
message.reply('you didnt react idiot');
});
这是我当前用于命令的代码。我发出这个命令的目的是记录缺勤,将它发送到另一个有反应的通道,让某人对它作出反应,如果他们用复选标记作出反应,它就会将它发送回最初发送命令的通道,但是如果他们对十字做出反应,最初发出命令的人就会被机器人删除。最后几件事很简单,但我的主要问题是反应。我已经使反应出现,但最后一点代码似乎打破了它。“const filter”位之后的所有内容。如果我删除所有这些,那么它只会发送带有反应的嵌入消息,但是反应不会做任何事情。但是,如果我把它留在里面。它甚至不会发送消息,我得到一个错误,声明“语法错误:意外的结束输入”,现在我已经在谷歌上搜索了一个小时,得到了朋友的帮助,但不幸的是,没有任何帮助。如果有人能帮上忙,我们将不胜感激,先谢谢。
虽然我不能看到整个代码,但我相信您的错误不是从上面的代码抛出的。语法错误“input end of input”通常是由于没有在代码的某个地方完成一个或多个括号,即)};
引起的--通常在main.js文件中的“client on”函数之后。检查整个代码,确保每个括号都被正确地表示。也许把代码放到code.vb中--它会检测并指出如上面所述的语法错误。
让我知道进展。
我又花了3个小时在我的迷你地牢里弄明白了这一点,并得到了一些工作。
msg.guild.channels.find(c => c.id == "693088078168064051")
.send(tempVars("absence_review")).then(function(message){
message.react("✅")
.then(() => message.react("❌"))
.catch(error => {});
});
const filter = (reaction, user) => {
return ['✅', '❌'].includes(reaction.emoji.name) && user.id === message.author.id;
};
message.awaitReactions(filter, {
max: 1
})
.then(collected => {
const reaction = collected.first();
if (reaction.emoji.name === '✅', reaction.user.bot === false) {
message.reply('reacted with yee.');
} else if (reaction.emoji.name === '❌', reaction.user.bot === false) {
message.reply('reacted with nah dude.');
}
})
.catch(collected => {
message.reply('you didnt react idiot');
});
这是它的一个固定版本,虽然最后一点不一定工作,我将尝试解决其余的自己。