【问题标题】:Discord.js embed commandDiscord.js 嵌入命令
【发布时间】:2020-07-14 14:05:16
【问题描述】:

一些信息:

我一直在尝试制作一个命令,使机器人嵌入标题和描述(例如!嵌入(此处的标题)|(此处的描述)),因此任何拥有正确权限的人都可以使用机器人进行嵌入,但我要么真的很愚蠢,要么非常坚持我的代码中所谓的导致无处可去的铅。

问题:

似乎无法让标题输入和描述输入以一种奇怪的方式相互混淆(将标题放入描述中或以其他方式)垂直斜杠被认为是标题和之间的分隔线描述,但无论我多么努力地弄乱我的代码,我都无法让它工作。

代码:

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"
}

【问题讨论】:

  • 你能说得更具体一点,你说的“不要以奇怪的方式互相干扰”吗?

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


【解决方案1】:

错误就在这里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"
}

【讨论】:

  • 不知道怎么让标题不出现在desc或者怎么让标题长于1个字。
  • 你帮了我很多 m8 谢谢我已经坚持了一天半没有睡觉我现在可以轻松休息了。祝你工作顺利!
  • 谢谢!祝你发展顺利;)
猜你喜欢
  • 2021-11-07
  • 2019-08-21
  • 2020-10-09
  • 1970-01-01
  • 2020-10-18
  • 2023-03-12
  • 2021-07-10
  • 2023-04-03
  • 2021-10-14
相关资源
最近更新 更多