discord.js机器人等待仅在异步功能中有效

时间:2020-09-04 14:41:34

标签: javascript node.js async-await discord.js

我不知道可以在哪里放置异步。请帮帮我。我有一个等待日志,仅在异步功能中有效

const args = message.content.split(' ');
const command = args.shift().toLowerCase();

if (command === '.eval') {
 // Put your userID here
 if (message.author.id !== '505034363914682368') return;

 let evaled;
 try {
  evaled = await eval(args.join(' '));
  message.channel.send(inspect(evaled));
  console.log(inspect(evaled));
 } catch (error) {
  console.error(error);
  message.reply('there was an error during evaluation.');
 }
}

2 个答案:

答案 0 :(得分:0)

您必须确保您的message函数是异步的。

client.on('message', async (message) => {
//                   ^^^^^

答案 1 :(得分:-1)

当然,await仅在异步函数中起作用。您可以使用.then(callback)代替async-await,也可以将整个代码转换为具有声明为异步函数的函数的IIFE(立即调用函数表达式),并在其中使用await。