一段时间以来,我的代码一直存在问题。我想将货币命令放在单独的文件中,但是我不知道如何解决错误await is an async function
。如果有一种方法可以使文件中的所有代码都异步读取,那将是惊人的,但否则,只有一种使模块中的await正常工作的方法会很棒。
命令之一:
//coins.js
module.exports = {
name: 'balance',
execute(message, args){
var output = await eco.FetchBalance(message.author.id)
const balembed = new Discord.RichEmbed()
.setAuthor(message.author.avatarURL)
.setTitle(`${floweremote} | ${message.author.username}'s Balance`)
.setDescription(`${floweremote} ${output.balance}`)
.setColor(0xFF8AFF)
.setFooter(`Akasuki ${version}`, client.user.avatarURL)
.setTimestamp(new Date());
message.channel.send(balembed);
}
}
我如何加载代码:
//index.js
if (command === 'balance') {
client.commands.get('balance').execute(message, args);
}
分布在文件(coins.js)中的是其他带有await
的行,当然它们都有相同的问题。我了解发生了什么问题,只是不知道如何解决。很抱歉,这个问题看起来很傻。
谢谢您的光临。
答案 0 :(得分:0)
那么,您可以将async
放在execute()
方法的前面,如下所示:
async execute(message, args) { ... }
,然后将允许您在该函数中使用await
。
或者,您可以只使用.then()
代替await
。