如何制作一个像这样输出的 discord.js eval 命令
How to make a discord.js eval command that outputs like this
所以我正在开发我的机器人等等,我注意到服务器中的其他人有一个机器人,当您使用 eval 命令时,它会将输入和输出放入一个嵌入中,然后输出对于 setActivity eval 事情来说看起来像这样。如果可能的话,我将如何在我的代码中实现它,或者我会为此做什么?
ClientPresence {
userID: null,
guild: null,
status: 'online',
activities: [Array],
clientStatus: null
}
这是我当前的代码 -
const Discord = require('discord.js');
const { prefix } = require('./../../config.json');
module.exports = {
name: 'eval',
description: 'eval a bit of code',
async execute (client, message, args) {
if (message.author.id !== "559200051629654026") return;
if (message.content.startsWith(prefix + "eval")) {
var result = message.content.split(" ").slice(1).join(" ")
let evaled = eval(result);
const evalEmbed = new Discord.MessageEmbed()
.setColor('RANDOM')
.addFields(
{ name: '**Input:**', value: `\`\`\`js\n${args}\`\`\``, inline: false },
{ name: '**Output:**', value: `\`\`\`js\n${evaled}\`\`\``, inline: false }
)
message.channel.send(evalEmbed)
}
},
};
我有它所以它输出一个嵌入,但是它总是说 [object, Promise]
你可能猜到了,[object, Promise]
意味着这里有一个承诺。唯一的解决方案是 await
这个 Promise。我假设你可以让你的函数 async
和 await eval(result)
.
所以我正在开发我的机器人等等,我注意到服务器中的其他人有一个机器人,当您使用 eval 命令时,它会将输入和输出放入一个嵌入中,然后输出对于 setActivity eval 事情来说看起来像这样。如果可能的话,我将如何在我的代码中实现它,或者我会为此做什么?
ClientPresence {
userID: null,
guild: null,
status: 'online',
activities: [Array],
clientStatus: null
}
这是我当前的代码 -
const Discord = require('discord.js');
const { prefix } = require('./../../config.json');
module.exports = {
name: 'eval',
description: 'eval a bit of code',
async execute (client, message, args) {
if (message.author.id !== "559200051629654026") return;
if (message.content.startsWith(prefix + "eval")) {
var result = message.content.split(" ").slice(1).join(" ")
let evaled = eval(result);
const evalEmbed = new Discord.MessageEmbed()
.setColor('RANDOM')
.addFields(
{ name: '**Input:**', value: `\`\`\`js\n${args}\`\`\``, inline: false },
{ name: '**Output:**', value: `\`\`\`js\n${evaled}\`\`\``, inline: false }
)
message.channel.send(evalEmbed)
}
},
};
我有它所以它输出一个嵌入,但是它总是说 [object, Promise]
你可能猜到了,[object, Promise]
意味着这里有一个承诺。唯一的解决方案是 await
这个 Promise。我假设你可以让你的函数 async
和 await eval(result)
.