首页 > 解决方案 > Discord.js ';' 预期的。x2

问题描述

我对这段代码有 2 个问题,预期为 ';' 2个位置,在第一行结束时在跑步之前和{之后。当我启动它时,我得到了这个错误。

async run(Client, oldMember, newMember) {
      ^^^

SyntaxError: Unexpected identifier
bot.on('guildMemberUpdate', message => {

    async run(Client, oldMember, newMember) {
        const channel = Client.channel.cache.get('707524910658093058');

        if (oldMember.roles.cache.size !== newMember.roles.cache.size) {
            if (!oldMember.roles.cache.has('712325241845710878') && newMember.roles.cache.has
                ('712325241845710878')) {
                channel.send(`Thank ${newMember} for boosting you are awesome`);
            }
        }
    }
});

标签: node.jsdiscord.js

解决方案


您错过了discord.js 客户端事件处理的工作方式。

请查看guildMemberUpdate 事件文档,您应该这样做:

bot.on('guildMemberUpdate', (oldMember, newMember) => {
        const channel = newMember.guild.channels.cache.get('707524910658093058');

        if (oldMember.roles.cache.size !== newMember.roles.cache.size) {
            if (!oldMember.roles.cache.has('712325241845710878') && newMember.roles.cache.has('712325241845710878')) {
                channel.send(`Thank ${newMember} for boosting you are awesome`);
            }
        }
});

我建议您查看本指南以开始使用。


推荐阅读