繁体   English   中英

Discord.js 批量删除命令

[英]Discord.js Bulk Delete command

我正在尝试向我的机器人添加批量删除命令,但是当我输入要删除的消息数量时,出现以下错误:

TypeError [MESSAGE_BULK_DELETE_TYPE]: The messages must be an Array, Collection, or number.

这是代码:

else if (isVallidCommnad(message, "delete")){
            if (!message.member.hasPermission('KICK_MEMBERS'))  return message.channel.send("You cannot delete messages :/");
            if(!args[0]) return message.reply(" How many messages do you want to delete (limit 99)");
            if(parseInt(args[0]) > 99) return message.reply("You can't delete more than 99 messages at once dude!!");
            
            message.channel.bulkDelete(parseInt(args[0]) + 1 ).then(message =>{
                message.channel.send(`Cleared ${args[0]} messages!`).then (message =>message.delete({timeout: 300}));
                message.react("👌")
            }).catch((err) =>{
                console.log(err)
                return message.reply("An error occurred!")
            })
const deleteCount = parseInt(args[0], 10);

if (!deleteCount || deleteCount < 1 || deleteCount > 100) return;

message.channel.bulkDelete(deleteCount + 1).catch(error => message.reply(`Couldn't delete messages because of: ${error}`));

要使用parseInt() ,您必须添加小数基数,因此 10 -> parseInt(args[0], 10); . 我上面放的代码片段运行良好。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM