{JS}返回承诺 { <待定 > }



我正在使用不和谐.js。我有一个 eval 命令(代码:

if (cmd === `${prefix}eval`) {
if (message.author.id !== "627835075064627221") return;
function clean(text) {
if (typeof (text) === "string")
return text.replace(/`/g, "`" + String.fromCharCode(8203)).replace(/@/g, "@" + String.fromCharCode(8203));
else
return text;
}
try {
const code = message.content.split(" ").slice(1).join(" ");
let evaled = eval(code);
if (typeof evaled !== "string")
evaled = require("util").inspect(evaled)

let evalCode = new Discord.MessageEmbed()
.setTitle("**EVAL**")
.setDescription(clean(evaled), { code: "xl" })
.setColor("RANDOM")
.setFooter("Spood's Lounge | Eval")

message.channel.send({ embed: evalCode });
} catch (err) {
message.channel.send(``ERROR` ```xln${clean(err)}n````);
}
}

当我对评估做某事时message.reply("hello world!")它只会返回Promise { < Pending > }.当我尝试做其他事情时,例如 evalconsole.log("hello world!")它返回未定义。

如何修复它以返回实际值?

您需要等待承诺使用await

解析
let evaled = await eval(code);

最新更新