【发布时间】:2018-01-12 21:44:28
【问题描述】:
我正在开发一个 Discord 机器人,最近一直在阅读 API。我想为我的机器人添加一个命令,该命令将完全清除文本通道,并且只允许有权管理消息的人。
这是我目前的代码:
client.on('message', function(message) {
if (message.content == "^clear") {
try {
if (message.member.hasPermission("MANAGE_MESSAGES")) {
messages = message.channel.fetchMessages();
message.channel.bulkDelete(messages);
}
} catch(e) {
message.channel.send("ERROR: ERROR CLEARING CHANNEL.");
console.log(e);
}
}
});
我收到一个如下所示的错误:
TypeError: The messages must be an Array, Collection, or number.
at TextChannel.bulkDelete (/Users/person/bot/node_modules/discord.js/src/structures/interfaces/TextBasedChannel.js:379:11)
at Client.<anonymous> (/Users/person/bpt/bot.js:29:33)
at emitOne (events.js:96:13)
at Client.emit (events.js:188:7)
at MessageCreateHandler.handle (/Users/person/bot/node_modules/discord.js/src/client/websocket/packets/handlers/MessageCreate.js:9:34)
at WebSocketPacketManager.handle (/Users/person/bot/node_modules/discord.js/src/client/websocket/packets/WebSocketPacketManager.js:102:65)
at WebSocketConnection.onPacket (/Users/person/bot/node_modules/discord.js/src/client/websocket/WebSocketConnection.js:325:35)
at WebSocketConnection.onMessage (/Users/person/bot/node_modules/discord.js/src/client/websocket/WebSocketConnection.js:288:17)
at WebSocket.onMessage (/Users/person/bot/node_modules/discord.js/node_modules/ws/lib/EventTarget.js:103:16)
at emitTwo (events.js:106:13)
【问题讨论】:
标签: node.js macos bots discord discord.js