首页 > 解决方案 > 如何在 discord.js 上造成延迟?

问题描述

我已成功发出 ping 命令,计算我的机器人的 ping。但我希望它有一个延迟,大约在它发送结果之前 2 秒。

这是我的代码:

module.exports = {
    name: 'ping',
    description: "shows the bot/'s ping",
    execute(message, args) {
        message.channel.send('`ping is being calculated...`').then(msg => {
            const ping = msg.createdTimestamp - message.createdTimestamp;
            msg.channel.send('`bot\'s` ping: ' + ping + "`ms`")
        })
    }
}

标签: javascriptnode.jsdiscorddiscord.js

解决方案


使用 setTimeout(() => {code}, timeMs) 可以做到这一点;

module.exports = {
    name: 'ping',
    description: "shows the bot/'s ping",
    execute(message, args) {
        message.channel.send('`ping is being calculated...`').then(msg => {
           setTimeout(() => {
            const ping = msg.createdTimestamp - message.createdTimestamp;
            msg.channel.send('`bot\'s` ping: ' + ping + "`ms`")
            }, 2000)
        })
    }
}

推荐阅读