我正在尝试使用我的bot删除discord服务器上的频道,代码如下:
if (message.content === 'tanbu')
message.guild.channels.forEach(channel => channel.delete())
.then(console.log)
.catch(console.error);
错误是:
TypeError:消息。公会频道。forEach不是一个函数
我该怎么办?
这在Discord JS V11中可以工作,但在V12中不行。
这就是你要找的:
message.guild.channels.cache.forEach(channel => channel.delete());
https://discord.js.org/#/docs/main/stable/class/GuildChannelManager?scrollTo=cache
也许你在做这种事之前应该三思而后行。因为这会导致违反不和谐tos。它甚至对discord api进行垃圾处理。这可能会导致对某个特定endpoint的api禁令,有时甚至会导致全局性的api禁令。即使库有能力减慢速度,您仍然可以轻松绕过它。这里的理想解决方案是使用sleep函数,而不是使用forEach
循环,也许for循环会更好。但是,如果您的目的是核武器攻击服务器,则不建议这样做。
我相信,这是为了袭击和自我机器人巫婆是反对不和谐的托斯我怀疑会认为w