我正在尝试使用discord.js创建一个关于discord的民意测验,尽管我大多数情况下都能使它工作,但是有一件我不知道的事情。
这是我的代码:
emojiArray = [
":number_one:530589007504080917",
":number_two:530588366719287306",
":number_three:530589050311016458",
":number_four:530589092329816075",
":number_five:530589126643286056",
":number_six:530589166946222090",
":number_seven:530589218796208129",
":number_eight:530589262471626762",
":number_nine:530589298504892417"
];
let reactionNumber = args[0];
embed = new Discord.RichEmbed()
.setColor(0xffffff)
.setFooter("note: any reactions that are not part of the poll will be removed")
.setDescription(args.join(" "))
.setTitle(`Poll created by ${message.author.username}`);
message.channel.send(embed).then(async function(message) {
for (x = 0; x < reactionNumber; x++) {
await message.react(emojiArray[x]);
}
reactionNumber.replace(args[0], '');
}).catch(function() {
message.channel.sendMessage(err);
});
message.delete({
timeout: 1000
});
用户将输入命令:[prefix]poll [number of reactions] [description]
看起来像这样:p!poll 9 test
目前这是结果:
您会注意到命令中的“ 9”也在描述中,我无法弄清楚该如何解决。
我唯一尝试过的是:
reactionNumber.replace(args[0],'');
我希望删除“ 9”或不再需要的任何输入内容。有人有什么想法吗?
答案 0 :(得分:0)
在reactionNumber
之后更改setDescription
不会做任何事情;相反,请使用以下内容更改此行:
.setDescription(args.join(" ")) // WRONG ✗
.setDescription(args.splice(1).join(" ")) // RIGHT ✓