Discord.js嵌入命令

时间:2020-04-02 14:46:34

标签: javascript node.js bots discord discord.js

某些信息:

我一直在尝试使该机器人嵌入标题和描述的命令(例如!embed(此处为标题)|(此处为描述)),以便拥有权限的任何人都可以使用该机器人进行嵌入,但对于我的代码中所谓的导致无处可寻的线索,我实在是愚蠢或极其执着。

问题:

似乎无法获得标题输入和描述输入,以免彼此混淆(将标题放入描述中或以其他方式放置),垂直斜线被认为是标题与输入之间的分隔符描述,但我无法使它毫无作用地处理代码。

代码:

const Discord = require("discord.js");

module.exports.run = async (client, msg, args) => {

    args.slice(0).join(" ")

    let embed = new Discord.MessageEmbed()
    .setColor("RANDOM")
    .setTitle(args[0])
    .setDescription(args.slice(1).join(" "))

    msg.channel.send(embed);
}

module.exports.help = {
    name: "embed"
}

1 个答案:

答案 0 :(得分:0)

错误就在这里args.slice(0).join(" ")

您需要将args的新值存储到args值中以进行更新。

因此将其更改为:args = args.slice(0).join(" ")

通常它会完美地工作!

编辑:

您可以在命令中使用特定的错字,例如-command -t Title with multiple words -d Description with multiple words。 然后,您可以修改您的代码。

const Discord = require("discord.js");

module.exports.run = async (client, msg, args) => {

    args.slice(0).join(" ")

    let embed = new Discord.MessageEmbed()
    .setColor("RANDOM")
    .setTitle(args.join(" ").split("-t")[1].split("-d")[0].trim())
    .setDescription(args.join(" ").split("-d")[1].trim())

    msg.channel.send(embed);
}

module.exports.help = {
    name: "embed"
}