问题描述
我有问题。 当我执行它时,命令有效,但整个计时器系统不起作用,我的印象是它没有得到反应 我有一个错误:
(节点:25772)未处理的承诺拒绝警告:类型错误:无法读取
未定义的属性“计数”
在 Object.exports.run (D:\Gdrives\jeux\bot_discord\Bottest\Commands\Admin\sondage.js:96:50)
在 processticksAndRejections (internal/process/task_queues.js:93:5) (node:25772)
UnhandledPromiseRejectionWarning:未处理的承诺拒绝。这
错误源于抛出异步函数内部
没有 catch 块,或者通过拒绝未处理的承诺
用 .catch()。在未处理的承诺上终止节点进程
拒绝,请使用 CLI 标志 --unhandled-rejections=strict
(请参阅
https://nodejs.org/api/cli.html#cli_unhandled_rejections_mode)。
(拒绝编号:2)
const discord = require("discord.js");
const agree = "✅";
const disagree = "❎";
exports.run = async (client,message,args,level) => {
if(!message.member.hasPermission("ADMINISTRATOR")) {
message.channel.send('`❌` Vous n\'avez pas la permission d\'executer cette commande').then(msg => msg.delete({ timeout: 3000 }))
return;
}
// On efface la commande.
message.delete();
// Variables
let config = client.config;
let params = args.splice(0).join(" ").split("|");
let pollTitle = params[0];
let pollQuestion = params[1];
let pollTime = params[2] || 0;
let pollAuthor = message.author.username;
let pollTimeReaction;
let pollTimeUnity;
// On vérifie qu'il ne manque aucun paramètre
if (params.length < 1)
{
return message.author.send(`Il manque des paramètres dans cette fonction.`);
}
// Si le premier paramètre est "aide" ou "help",ça donne une info.
if (params[0] == "aide" || params[0] == "help")
{
return message.author.send(`Utilisation : !sondage <Titre>|<Question du sondage>|<Temps en millisecondes>`);
}
if (pollTime >= 86400000)
{
pollTimeReaction = Math.floor(pollTime / 86400000);
pollTimeUnity = "jours";
}
else if (pollTime >= 3600000)
{
pollTimeReaction = Math.floor(pollTime / 3600000);
pollTimeUnity = "heures";
}
else if (pollTime >= 60000)
{
pollTimeReaction = Math.floor(pollTime / 60000);
pollTimeUnity = "minutes";
}
else
{
pollTimeReaction = Math.floor(pollTime / 1000);
pollTimeUnity = "secondes";
}
let pollEmbed = new discord.MessageEmbed()
.setTitle(`Sondage : ${pollTitle}`)
.setDescription(pollQuestion)
.setFooter(`Sondage de ${pollAuthor}. Le sondage prendra fin dans ${pollTimeReaction} ${pollTimeUnity}.`);
let pollMessage = await message.channel.send(pollEmbed);
await pollMessage.react(agree);
await pollMessage.react(disagree);
// On crée une collection des réactions
const reactions = await pollMessage.awaitReactions(reaction => reaction.emoji.name === agree || reaction.emoji.name === disagree,{ max: 1,time: pollTime });
const agreeCount = reactions.get(agree).count;
const disagreeCount = reactions.get(disagree).count;
let resultsEmbed = new discord.MessageEmbed()
.setTitle("Résultats du sondage")
.setDescription(`${pollQuestion}`)
.addField(agree,`${agreeCount} Vote(s)`,true)
.addField(disagree,`${disagreeCount} Vote(s)`,true)
.setFooter(`Sondage de ${pollAuthor}`);
message.channel.send(resultsEmbed);
pollMessage.delete(0);
};
exports.help = {
aliases: ['sondage','poll'],name: "poll",category: "Admin",description: "Cette commande vous permet de faire un sondage auprès de vos membres.",usage: "poll <Question> <Réponse>"
};
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)