由Discord.js中的用户批量删除邮件

编程入门 行业动态 更新时间:2024-10-10 10:31:45

由Discord.js中的用户<a href=https://www.elefans.com/category/jswz/34/1770428.html style=批量删除邮件"/>

由Discord.js中的用户批量删除邮件

我要删除特定用户发布的所有消息。到目前为止,我有:

async function clear() {
    let botMessages;
    botMessages = await message.channel.fetch(708292930925756447);
    message.channel.bulkDelete(botMessages).then(() => {
        message.channel.send("Cleared bot messages").then(msg => msg.delete({timeout: 3000}))
    });
}
clear();

将botMessages传递给bulkDelete()似乎有问题,它想要一个数组或集合,但显然botMessages不是数组或集合。

我该如何将botMessage传递给bulkDelete,还是我要把这完全错了?

回答如下:

[message.channel.fetch()获取消息发送到的通道,而不是该通道中的消息。

您需要获取一定数量的消息并对其进行过滤,以便仅接收由您的漫游器发送的消息,然后将它们传递给bulkDelete()

messages = await message.channel.messages.fetch({
    limit: 100 // Change `100` to however many messages you want to fetch
}).then(await (messages) => { 
    const botMessages = [];
    await messages.filter(m => m.author.id === BOT_ID_HERE).forEach(msg => botMessages.push(msg))
    message.channel.bulkDelete(botMessages).then(() => {
        message.channel.send("Cleared bot messages").then(msg => msg.delete({
            timeout: 3000
        }))
    });
})

更多推荐

由Discord.js中的用户批量删除邮件

本文发布于:2024-05-07 08:25:47,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1755385.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:批量   邮件   用户   Discord   js

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!