首页 > 解决方案 > 错误的反应顺序 DiscordBot

问题描述

我正在制作一个不和谐的机器人,我希望它用特定的表情对某个用户做出反应,但这些表情的顺序不正确,机器人随机添加它们,我该如何解决?

代码:

client.on('message', (msg) => {
    if(msg.author.id  === "424253410918006810" ) { 
        msg.react('')  
        msg.react('')
        msg.react('')
}});    

标签: javascriptbotsdiscord.js

解决方案


尝试使您的消息功能异步。像这样:

client.on('message', async (msg) => {
    if(msg.author.id  === "424253410918006810" ) { 
        await msg.react(''); 
        await msg.react('');
        await msg.react('');
    }
});

msg.react 返回一个Promise,并且 Promise 并不总是按照您启动它们的顺序完成。但是,您可以使用 await 等待 Promise 解决后再继续。


推荐阅读