替代 args.join(" ")?
Alternative to args.join(" ")?
我正在尝试使用 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”或在不再需要后输入的任何内容。有人有什么想法吗?
在 setDescription
之后更改 reactionNumber
不会有任何效果;相反,将此行更改为以下行:
.setDescription(args.join(" ")) // WRONG ✗
.setDescription(args.splice(1).join(" ")) // RIGHT ✓
我正在尝试使用 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”或在不再需要后输入的任何内容。有人有什么想法吗?
在 setDescription
之后更改 reactionNumber
不会有任何效果;相反,将此行更改为以下行:
.setDescription(args.join(" ")) // WRONG ✗
.setDescription(args.splice(1).join(" ")) // RIGHT ✓