【问题标题】:ReferenceError: message is not defined when trying to put let guildReferenceError:尝试放置让公会时未定义消息
【发布时间】:2020-08-03 14:00:03
【问题描述】:

我正在开发我的不和谐机器人,我试图让它成为公会成为 message.guild 的地方,在这样做的过程中我得到了错误 let guild = message.guild; ^

ReferenceError: 消息未定义

我的代码是:

client.on('messageReactionAdd', (reaction, user) => {
    if(reaction.emoji.name === 'ticket2') {
        {
            let guild = message.guild;

            guild.channels.create(`${message.author.username}s-ticket`, {
                type: 'text',
                permissionOverwrites: [
                    {
                        allow: 'VIEW_CHANNEL',
                        id: message.author.id
                    },
                    {
                        deny: 'VIEW_CHANNEL',
                        id: guild.id
                    },
                    {
                        allow: 'VIEW_CHANNEL',
                        id: '691669966998601788'
                    }
                ]
            }).then(ch => {
                userTickets.set(message.author.id, ch.id); 
                message.channel.send('Ok! Your ticket will be created shortly');
            }).catch(err => console.log(err));
        }
    }
});

【问题讨论】:

    标签: bots discord discord.js message


    【解决方案1】:

    这很简单,没有定义消息对象或变量,因为回调只接受用户的反应(您之前根本没有声明任何消息)。

    我建议你阅读关于 Discord.js rawEvents 的 this 指南

    【讨论】:

      【解决方案2】:

      您从未定义过上述变量message。由于您不在消息事件中,因此为了获得公会,您可以通过不同的属性获得它。在您的情况下,要获取响应消息的公会,您可以执行reaction.message.guild

      参考链接:
      1.https://discord.js.org/#/docs/main/stable/class/MessageReaction?scrollTo=message
      2.https://discord.js.org/#/docs/main/stable/class/Message?scrollTo=guild

      【讨论】:

        猜你喜欢
        • 2020-08-25
        • 2020-02-22
        • 2021-06-03
        • 2019-09-25
        • 1970-01-01
        • 1970-01-01
        • 2019-12-29
        • 1970-01-01
        相关资源
        最近更新 更多