【问题标题】:discord.js how to edit/update embed?discord.js 如何编辑/更新嵌入?
【发布时间】:2020-11-02 22:49:56
【问题描述】:

我正在开发一个“小型”机器人以获取乐趣,目前正在尝试创建一个二十一点命令。前半部分工作正常,但是当我想更新机器人已经发布的嵌入时会出现问题。我不断收到错误消息: UnhandledPromiseRejectionWarning: DiscordAPIError: Cannot edit a message authored by another user 以下是部分代码:

        const embd = new Discord.MessageEmbed()
            .addFields(
                { name: 'Dealer cards: ' + botCards + ' + ?'},
                { name: 'Your cards: ' + userCards},
            )

            message.channel.send(embd).then(embdReact => {
                embdReact.react('????');
                embdReact.react('????');

                const filter = (reaction, user) => {
                    return ['????','????'].includes(reaction.emoji.name) && user.id === message.author.id;
                };
            
                embdReact.awaitReactions(filter, { max: 1, time: 60000})
                    .then(collected => {
                        const reaction = collected.first();
            
                        if (reaction.emoji.name === '????'){
                            const newEmbd = new Discord.MessageEmbed()
                                .setTitle("Wow");
                            message.edit(newEmbd);
                        }
                        else {
                            message.reply('boo');
                        }
                        })
            }) 

为了测试,我尝试只更改标题,但在理想情况下,相应的字段会被更新。 例如:“您的卡片:”字段。

【问题讨论】:

    标签: javascript discord discord.js


    【解决方案1】:

    您正在编辑错误的消息:

    行:

    message.edit(newEmbd);
    

    应该是:

    embdReact.edit(newEmbd);
    

    希望这将帮助您解决问题!

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-05-26
      • 2021-05-22
      • 2021-01-13
      • 2020-09-08
      • 2020-08-03
      • 2021-10-30
      • 1970-01-01
      相关资源
      最近更新 更多