如何在嵌入不和谐机器人中输入多行参数

Posted

技术标签:

【中文标题】如何在嵌入不和谐机器人中输入多行参数【英文标题】:How could I input multi-line arguments in an embed discord bot 【发布时间】:2020-09-25 15:29:26 【问题描述】:

我正在尝试制作一个嵌入 discord 机器人,并且我希望能够使用命令完全编辑消息,我遵循了一些教程并且能够设置每个参数的参数,但我可以每人只写一个字。 这个想法是用逗号分隔并能够写多个单词和行。

const Discord = require('discord.js');
const bot = new Discord.Client();

const token = '';

const PREFIX = '!';

bot.on('ready', () => 
  console.log('Bot online');
);

bot.on('message', message => 

  let args = message.content.slice(PREFIX.length).split(' ');

  switch (args[0]) 
    case 'embed':
      const embed = new Discord.MessageEmbed()
        .setTitle(args[1])
        .setDescription(args[2])
        .setImage(args[3])
        .setColor(args[4])
        .setFooter(message.author.username)
        .setTimestamp()
      message.channel.send(embed);
      break;
  
);

bot.login(token);

【问题讨论】:

let args = message.content.slice(PREFIX.length).split(' ') 你这里没有用逗号分隔 【参考方案1】:

由于您不是用逗号分隔每个 arg,而是用空格分隔它们,因此您的变量应该如下所示:

let args = message.content.slice(PREFIX.length).split(','); // Add an extra space after the comma if necessary

要写多行,你应该这样做:

// Let's say we are sending a message to a channel
message.channel.send(`$args[1]\n$args[2]`) // And you can keep on going as long as the args are supplied.

【讨论】:

以上是关于如何在嵌入不和谐机器人中输入多行参数的主要内容,如果未能解决你的问题,请参考以下文章

如何将许多不和谐嵌入附加到一条消息中?

Discord.js 在嵌入链接中将 api 连接到不和谐机器人

如何分别编辑多个不和谐嵌入?

如何让我的不和谐机器人检测嵌入的字段、标题字段和字段描述?

Discord.py 如何从不和谐消息中读取 int 并将其作为变量发送到嵌入中

显示嵌入中的服务器机器人数量 |不和谐.js