【发布时间】:2021-10-13 03:09:38
【问题描述】:
在 discord.js 的第 12 版中,我创建了一个名为 clear 的命令,如果指定了用户,该命令会应用过滤器。
我将代码更新到 v13,一切正常,但我的 clear 命令有问题。
我查看了他们的文档,据我所知,他们刚刚删除了 array 方法,但我找不到替换它的内容。
我的目标是,我想获取指定用户的消息。例如,如果数量是 20,我想获取用户的 20 条消息,然后删除这些消息。
我的代码:
message.channel.messages.fetch().then((msgs) => {
const UserMessages = msgs
.filter((m) => m.author.id === member.id)
.array()
.slice(0, messages); // this line throws error: array is not function.
message.channel.bulkDelete(UserMessages, true).then((data) => {
// rest of my code
});
});
【问题讨论】:
-
msgs.filter 返回什么?如果 msgs 是一个数组,那么过滤的结果也是,并且数组没有数组方法。
-
在版本 12 中,它正在返回用户的消息。我现在在他们的收藏列表中找不到 array() 。他们删除了它。
标签: javascript node.js discord discord.js