Javascript 如何使消息减半以避免消息长度错误?

Javascript 如何使消息减半以避免消息长度错误?,javascript,bots,discord,discord.js,Javascript,Bots,Discord,Discord.js,当我的服务器中有超过25个机器人时,根据消息发送长度的能力,机器人无法发送消息,那么如果长度为2000的机器人可以发送另一条消息吗 client.on('message', message => { if(message.content === "-allbots") { if(!message.channel.guild) return; let addone = 1; const botcounts = message.guild.members.filter(m

当我的服务器中有超过25个机器人时,根据消息发送长度的能力,机器人无法发送消息,那么如果长度为2000的机器人可以发送另一条消息吗

client.on('message', message => {
    if(message.content === "-allbots") { 
    if(!message.channel.guild) return;
  let addone = 1;
const botcounts = message.guild.members.filter(m=>m.user.bot).map(m=>`\`\`${addone++}\`\` - <@${m.id}>`);
            message.channel.send(`**I Found ${message.guild.members.filter(m=>m.user.bot).size} bots ${botcounts.join('\n')}**`)

      .catch(err => {
            message.reply('message is more than 2000 charachter');
            console.error(err);
            })
          }
      })
client.on('message',message=>{
如果(message.content==“-allbots”){
如果(!message.channel.guild)返回;
设addone=1;
const botcounts=message.guild.members.filter(m=>m.user.bot).map(m=>```${addone++}`-`);
message.channel.send(`**I发现${message.guild.members.filter(m=>m.user.bot).size}bots${botcounts.join('\n')}**)
.catch(错误=>{
message.reply('消息超过2000个字符');
控制台错误(err);
})
}
})

好吧,你可以这样做

messagesArray = []

if (message.length >= 2000) {
  let cutMessages = []

  // Here you have cut your messages
  //if they can pass 4k chars, you'll need a loop, if not, just use substr

  messagesArray.push(cutMessages)
}

if (messagesArray.length) 
  messagesArray.forEach( message => { console.log(message) })
else console.log(message)

Discord.js可以自动为您执行此操作。使用
split
属性传入对象

message.channel.send('超过2000个字符的文本…'{
拆分:{
前置词:“…”,
附加:“…”
}
);
这些消息将如下所示:


编辑:

将其合并到现有代码中类似于:

message.channel.send(
`**我发现${botcounts.length}bot${botcounts.length!==1?'s':''}**
${botcounts.join('\n')}`,
{split:true}//No添加了“…”。有关该用法,请参见上文。
)
.catch(控制台错误);

你能再多加几行解释你的问题吗?你能把这个添加到我的代码中吗?或者你的建议更明显一些
first part...
...second part