Discord.js Discord Bot:SyntaxError:意外的输入结束

问题描述 投票:0回答:2
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');
            });

这是我当前用于命令的代码。我要执行的命令是记录一个缺席情况,将其发送给另一个有反应的通道,让某人对此做出反应,如果他们对勾标记做出反应,它将把它发送回该命令最初发送的通道,但是,如果他们对十字架做出反应,则最初发出命令的人会被机器人DM。最后几件事很容易,但是我的主要问题是反应。我已经做出了反应,但是代码的最后一部分似乎破坏了它。 “常量过滤器”位之后的所有内容。如果我删除了所有这些内容,那么它将只发送包含响应的嵌入消息,但是响应不会执行任何操作。但是,如果我保留它。它甚至都不会发送消息,我会收到一条错误消息,指出“ SyntaxError:输入意外结束”。 。如果有人可以帮助,将不胜感激,在此先感谢。

discord discord.js
2个回答
0
投票

尽管我看不到整个代码,但我相信您的错误并非来自上面的代码。语法错误“输入意外结束”通常是由于未在代码中的某个位置完成一个或多个括号(即)};)引起的-通常在main.js文件中的“ client on”函数之后。仔细阅读整个代码,并确保正确显示每个括号。也许将您的代码放入code.vb中-它可以检测并指出语法错误,例如您上面的错误。

让我知道进度。


0
投票

我在迷你地牢中又花了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');
        });

这是它的固定版本,尽管最后一点不一定奏效,我会尝试自己解决其余问题。

© www.soinside.com 2019 - 2024. All rights reserved.