簡體   English   中英

Discord.js 中的反應

[英]Reactions in Discord.js

我剛剛將我的 djs 機器人從 v11 更新到 v12,所有命令都可以正常工作,但有一個不能。 我有一個投票命令,如果我輸入,投票 3,它會響應 1,2.3。 它什么也沒給我, 它刪除了我的信息,但是。 它沒有反應,也沒有發送嵌入。 在 v11 中,它運行良好。

module.exports = {
    name: 'vote',
    description: 'Szavazás létrehozása',
    guildOnly: true,
    dmOnly: false,
    adminOnly: false,
    execute(message, args) {
        const channel = message.channel;
        if (!args[0]) {
            message.channel.send("Adj meg egy paramétert!");
        } else {

        const parameter = parseInt(args[0], 10);
        if (parameter > 10 || parameter < 0) {
            message.channel.send("Adj meg egy 0 és 10 közötti számot!");
            return;
        }
        message.delete({ timeout: 1 })
        .then (() => channel.fetchMessages({ limit: 1 }).then(messages => {
            let lastMessage = messages.first();
            if (lastMessage.member != message.member) {
                message.channel.send("Nem tőled származik az előző üzenet.");
            }
            
          
            if (!lastMessage.author.bot) {
                if (args[0] === "0") {
                    lastMessage.react('✅')
                    .then (() => lastMessage.react('❎'));
                }
                if (args[0] === "1") {
                    lastMessage.react('1️⃣')
                }
                if (args[0] === "2") {
                    lastMessage.react('1️⃣')
                    .then (() => lastMessage.react('2️⃣'))
                }
                if (args[0] === "3") {
                    lastMessage.react('1️⃣')
                    .then (() => lastMessage.react('2️⃣'))
                    .then (() => lastMessage.react('3️⃣'))
                }
                if (args[0] === "4") {
                    lastMessage.react('1️⃣')
                    .then (() => lastMessage.react('2️⃣'))
                    .then (() => lastMessage.react('3️⃣'))
                    .then (() => lastMessage.react('4️⃣'))
                }
                if (args[0] === "5") {
                    lastMessage.react('1️⃣')
                    .then (() => lastMessage.react('2️⃣'))
                    .then (() => lastMessage.react('3️⃣'))
                    .then (() => lastMessage.react('4️⃣'))
                    .then (() => lastMessage.react('5️⃣'))
                }
                if (args[0] === "6") {
                    lastMessage.react('1️⃣')
                    .then (() => lastMessage.react('2️⃣'))
                    .then (() => lastMessage.react('3️⃣'))
                    .then (() => lastMessage.react('4️⃣'))
                    .then (() => lastMessage.react('5️⃣'))
                    .then (() => lastMessage.react('6️⃣'))
                }
                if (args[0] === "7") {
                    lastMessage.react('1️⃣')
                    .then (() => lastMessage.react('2️⃣'))
                    .then (() => lastMessage.react('3️⃣'))
                    .then (() => lastMessage.react('4️⃣'))
                    .then (() => lastMessage.react('5️⃣'))
                    .then (() => lastMessage.react('6️⃣'))
                    .then (() => lastMessage.react('7️⃣'))
                }
                if (args[0] === "8") {
                    lastMessage.react('1️⃣')
                    .then (() => lastMessage.react('2️⃣'))
                    .then (() => lastMessage.react('3️⃣'))
                    .then (() => lastMessage.react('4️⃣'))
                    .then (() => lastMessage.react('5️⃣'))
                    .then (() => lastMessage.react('6️⃣'))
                    .then (() => lastMessage.react('7️⃣'))
                    .then (() => lastMessage.react('8️⃣'))
                }
                if (args[0] === "9") {
                    lastMessage.react('1️⃣')
                    .then (() => lastMessage.react('2️⃣'))
                    .then (() => lastMessage.react('3️⃣'))
                    .then (() => lastMessage.react('4️⃣'))
                    .then (() => lastMessage.react('5️⃣'))
                    .then (() => lastMessage.react('6️⃣'))
                    .then (() => lastMessage.react('7️⃣'))
                    .then (() => lastMessage.react('8️⃣'))
                    .then (() => lastMessage.react('9️⃣'))
                }
                if (args[0] === "10") {
                    lastMessage.react('1️⃣')
                    .then (() => lastMessage.react('2️⃣'))
                    .then (() => lastMessage.react('3️⃣'))
                    .then (() => lastMessage.react('4️⃣'))
                    .then (() => lastMessage.react('5️⃣'))
                    .then (() => lastMessage.react('6️⃣'))
                    .then (() => lastMessage.react('7️⃣'))
                    .then (() => lastMessage.react('8️⃣'))
                    .then (() => lastMessage.react('9️⃣'))
                    .then (() => lastMessage.react('🔟'))
                }
                
            }
          }))
          .then(() => {
          const Discord = require('discord.js');
          const confirm = new Discord.MessageEmbed()
          .setColor("GREEN")
          .setDescription("Szavazás létrehozva. Reagálj a megfelelő emojival a szavazáshoz!");
          message.channel.send({embed: confirm});
    }) ; }
}
}

你能幫我嗎?

首先,請不要使用可以替換為switch的 if 鏈。 如果您仍然要使用它,至少將其更改為 if/elseif

繼承人的問題: message.channel.send({embed: confirm});

將其更改為message.channel.send(confirm);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM