首页 > 解决方案 > 当我启动我的机器人不和谐时,我有一个错误,我找不到如何修复它

问题描述

你好,我正在尝试编写我的第一个机器人,尤其是一个命令,让它提供它的 ping 和 API 的 ping,但是当我启动机器人时,我遇到了这个错误,我不知道如何修复它

        waiting = await message.channel.send("Je calcule le ping...").catch(console.error);
                  ^^^^^

SyntaxError: await is only valid in async function

目前的代码是这样的:

const Discord = require ("discord.js");

module.exports = {
    name: "ping",
    execute(bot, message, args){
        message.delete().catch(console.error);

        waiting = await message.channel.send("Je calcule le ping...").catch(console.error);

        let embed = new Discord.MessageEmbed()
        .setAuthor("Latence du bot & de l'api discord.js", bot.user.avatarURL)
        .setColor("RANDOM")
        .setTitle("pong !")
        .addField("**CactusBot :**", "> `" + `${bot.ws.ping}` + "ms`", true)
        .addField("**API :**", "> `" + Math.round(bot.ping) + "ms`", true)
        .setTimestamp(message.createdAt)
        .setFooter("Nuptay | demandé par @" + message.author.tag, bot.user.avatarURL)
        waiting.edit(pingEmbed).catch(console.error);
        message.channel.send(embed);
    }
}

(是的,我是法国人)

谢谢您的回答

标签: javascriptnode.jsdiscorddiscord.js

解决方案


await正如您在非异步函数中使用的错误状态。

为您的代码编写一个单独的async函数并导出该函数:

const execute = async (bot, message, args) => {
  // your code with await
}

module.exports = {
  name: "ping",
  execute,
}

检查不和谐指南

有关异步/等待的更多信息


推荐阅读