Javascript 如何使用v12+;向discord.js中的所有公会发送消息;(12.0.0及以上)

Javascript 如何使用v12+;向discord.js中的所有公会发送消息;(12.0.0及以上),javascript,node.js,discord.js,Javascript,Node.js,Discord.js,我试着使用v11.2,但那是个好主意。 它说它已经过时,需要更新。我可以用此代码替换什么?defaultChannel()已被弃用,没有其他选择。 您需要指定发送消息的通道,但由于某些服务器具有唯一的通道名称,因此无法工作…除非它们都具有相同的通道名称并保持不变(某些PEEP更改了general的名称) 嗯。。我为它编写了一个代码(如果频道名称为“general”,则有效) 摘自:因此您只想将消息“messageToSend”发送到每个帮会的一个频道,或者每个帮会中的所有textconnels?

我试着使用v11.2,但那是个好主意。 它说它已经过时,需要更新。我可以用此代码替换什么?

defaultChannel()
已被弃用,没有其他选择。 您需要指定发送消息的通道,但由于某些服务器具有唯一的通道名称,因此无法工作…除非它们都具有相同的通道名称并保持不变(某些PEEP更改了general的名称)

嗯。。我为它编写了一个代码(如果频道名称为“general”,则有效)


摘自:

因此您只想将消息
“messageToSend”
发送到每个
帮会的一个频道,或者每个
帮会中的所有
textconnels
?每个帮会中都有一个频道尝试过,但我有一个错误:
EnhandlePromisejectionWarning:TypeError:client.guilds.map不是一个函数
discord.JS现在使用缓存,所以您需要使用client.guilds.cache和Guild.channels.cache
if (command === "sendguildmessages") {
    if (message.author.id === "231956829159161856") {
        var guildList = client.guilds.array();
        try {
            guildList.forEach(guild => guild.defaultChannel.send("messageToSend"));
        } catch (err) {
            console.log("Could not send message to a (few) guild(s)!");
        }
    } else {
        message.reply(`You cant do that!`)
    }
} else
if (command === "sendguildmessages") {
  if (message.author.id === "231956829159161856") {
    try {
      let toSay = "messageToSend"
      this.client.guilds.map((guild) => {
        let found = 0
        guild.channels.map((c) => {
          if (found === 0) {
            if (c.type === "text") {
              if (c.permissionsFor(this.client.user).has("VIEW_CHANNEL") === true) {
                if (c.permissionsFor(this.client.user).has("SEND_MESSAGES") === true) {
                  c.send(toSay);
                  found = 1;
                }
              }
            }
          }
        });
      });
    }
    catch (err) {
      console.log("Could not send message to a (few) guild(s)!");
    }
  } else {
    message.reply("You cant do that!")
  }
}