如何删除discord服务器中的所有频道(js)

问题描述 投票:0回答:3

我试图用我的机器人删除我的discord服务器上的频道,这是代码。

if (message.content === 'tanbu')
    message.guild.channels.forEach(channel => channel.delete())
    .then(console.log)
    .catch(console.error);

错误是:

TypeError: message.guild.channels.forEach is not a function

我该怎么做?

discord discord.js
3个回答
0
投票

这在Discord JS V11中可以用,但在V12中就不行了。

这就是你要找的东西。

message.guild.channels.cache.forEach(channel => channel.delete());

https:/discord.js.org#docsmainstableclassGuildChannelManager?scrollTo=cache。


1
投票

也许你在做这种行为之前应该三思而行。因为这将导致违反Discord tos的规定。它甚至会给discord api带来垃圾信息,这可能会导致你的api被禁止到某个特定的端点或全球范围。即使库有能力减慢它的速度,你仍然可以轻松绕过它。理想的解决方案是使用一个睡眠功能,而不是使用一个 forEach 循环,也许一个for循环会做得更好.不过,如果你的目的是为了核弹服务器,那么不建议这样做。


1
投票

我相信那是为了突击和自我机器人,是违反discord的。服务条款我不服气地认为w

© www.soinside.com 2019 - 2024. All rights reserved.