【发布时间】:2018-04-07 22:23:34
【问题描述】:
如果英语不好,请见谅! 首先我运行我的不和谐机器人,然后使用“三弓”中的教程 然后我在教程的最后一部分 我得到了命令 !userinfo - 显示嵌入但是当我启动 !userinfo 我在 colsole 中遇到了这些错误
(节点:13056)UnhandledPromiseRejectionWarning:未处理的承诺拒绝(拒绝ID:1):ReferenceError:消息未定义 (节点:13056)[DEP0018] DeprecationWarning:未处理的承诺拒绝是 已弃用。将来,未处理的 Promise 拒绝将 使用非零退出代码终止 Node.js 进程。这是我的代码不和谐机器人代码
const botSettings = require("./botsettings.json");
const Discord = require("discord.js");
const prefix = botSettings.prefix;
const bot = new Discord.Client({disableEveryone: true})
bot.on("ready", async () => {
console.log(`Bot is ready! ${bot.user.username}`);
try {
let link = await bot.generateInvite(["ADMINISTRATOR"]);
console.log(link);
} catch(e) {
console.log(e.stack);
}
});
bot.on("message", async message =>{
if(message.author.bot) return;
if(message.channel.type === "dm") return;
let messageArray = message.content.split(" ");
let command = messageArray[0];
let args = messageArray.slice(1);
if(!command.startsWith(prefix)) return;
if(command === `${prefix}userinfo`) {
let embed = new Discord.RichEmbed()
.setAuthor(message.author.username)
.setDescription("This is the user info!")
.setColor("#9B59B6")
.addField("Full username", `${message.author.name}#${message.author.discriminator}`)
.addField("ID", message.author.id)
.addField("Create At", message.author.createAt)
messsage.channel.sendEmbed(embed);
return;
}
});
bot.login(botSettings.token);
【问题讨论】:
-
messsage.channel.sendEmbed(embed) 是一个在拒绝时抛出错误的承诺,你应该抓住拒绝。试试,message.channel.sendEmbed(embed).catch(err => console.log(err));
标签: javascript node.js discord discord.js