[英]Clear command is not deleting messages correctly discord.js v13
當我想使用以下代碼清除消息時:
await message.channel.messages.fetch({limit: args[0]}).then(messages =>{
message.channel.send(`Deleting Messages...`).then(msg => {
setTimeout(() => msg.delete(), 500)
})
message.channel.bulkDelete(messages);
});
它有效,但是當我說:“${prefix}clear 3”時,它會刪除 2 條消息。 或者當消息超過過去 14 天時,它不能刪除消息。
列表:
額外說明:我使用的是 discord.js v13 和 node.js v16
message.delete()
添加過濾器或刪除命令Channel.bulkDelete()
默認不會刪除超過 2 周的消息! 要啟用filterOld
參數,您必須使用Channel.bulkDelete(number, true)
並且您也可以刪除這些消息!首先,您的命令是一條消息,這就是為什么它刪除的數量少於該數量。其次,機器人無法刪除超過 2 周的消息第三,您不能刪除超過 100 條消息。 所以你可以這樣做:
const amount = args[0]
if (amount > 100 || amount < 1) {
return message.channel.send({content: `I cannot delete 100 messages or more`})
}
const messages = await message.channel.messages.fetch({
limit: amount + 1,
});
await message.channel.bulkDelete(messages, true)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.