所以我得到了这个作为命令代码:
if(!args[0]){
message.channel.send(client.cmdlines.wrongUsage);
}else if(args[1]){
message.channel.send(client.cmdlines.wrongUsage);
}else{
if(message.member.hasPermission('ADMINISTRATOR')){
if(!isNaN(args[0])){
message.channel.bulkDelete(args[0]+1).then(msg => {
message.channel.send(`Deleted ${args[0]} messages.`).then(msg => msg.delete({ timeout: 3000 })).catch(e => console.log(e));
});
}else{
message.channel.send(client.cmdlines.wrongUsage);
}
}else{
message.channel.send(client.cmdlines.missingPerms);
}
}
}
出于某种原因,我得到了:无效的表单正文 限制:int 值应小于或等于 100。 错误。有人知道问题可能是什么
答案 0 :(得分:0)
它在错误中。discord.js 不允许您一次批量删除超过 100 条消息。运行一个函数来确定您需要循环多少次才能删除所有所需的消息 (Math.floor(args[0]/100
)。然后,您需要从 100 条消息中删除剩余的消息数。(args[0] - Math.floor(args[0])*100
)
循环删除 100 条消息的第一个值,然后删除消息后的第二个值。
哦,请确保首先将 args[0]
解析为 int